如何解决Pandas 数据集的成员差异
我正在寻找解决此问题的方法: 我有两组数据,相同的维度和相同的格式,都来自同一个软件。 我想绘制这两个数据集之间的差异。
我尝试以各种可能的方式减去数据集,但结果总是如下:当我从一个 43x64 的熊猫数据集减去另一个 43x64 的数据集时,我获得了一个 43x127 的 NaN 数据集,在标题中包含一些奇怪的值。
ComplexWarning: Casting complex values to real discards the imaginary part
return array(a,dtype,copy=False,order=order)
0.020408 0.020516 0.020574 ... 0.998493 0.998988 1.000000
0 NaN NaN NaN ... NaN NaN 0.0
1 NaN NaN NaN ... NaN NaN 0.0
2 NaN NaN NaN ... NaN NaN 0.0
...
41 NaN NaN NaN ... NaN NaN 0.0
42 NaN NaN NaN ... NaN NaN 0.0
我怎样才能获得一个有差异的 43x64 数据集?
解决方法
假设 df1
和 df2
是具有相同索引和列名的两个数据框。
试试这个:
df1=df1.reset_index(drop=True)
df2=df2.reset_index(drop=True)
df2.columns = [str(col) + '_n' for col in df2.columns]
final1=df2.merge(df1,left_index=True,right_index=True)
final1=final1.reindex(sorted(final1.columns),axis=1)
final2=pd.DataFrame()
for col in df1.columns:
final2['{}_diff'.format(col)]=final1[col].fillna(0)-final1['{}_n'.format(col)].fillna(0)
final2=final2.filter(like='_diff',axis=1)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。