[英]Python Pandas - Compare between two dataframes differences
我正在创建一个python应用程序,在这里我试图比较两个数据框以识别差异。 下面给出的是我遇到问题的一段代码。 当它尝试在NaN和String / int之间进行比较时,我在下一行中遇到一个问题
不同=(a0!= a1)
错误:
TypeError:无法更改对象数组的数据类型
码:
df0 = Excel1.parse(sheet)
df1 = Excel2.parse(sheet)
a0, a1 = (df0.fillna('0')).align(df1.fillna('0'))
different = (a0 != a1)
comp = a0[different].join(a1[different], lsuffix='_old', rsuffix='_new')
可以使用a0=df0.values
和a1=df1.values
将数据帧转换为numpy数组; 那么您将拥有两个矩阵a0, a1
; 要查找具有不同值的单元格,可以使用np.where(a0 != a1)
。 显然,您可能需要在进行比较之前使用np.isnan()
或np.isnf()
清理数据。
似乎没有任何一个数组只有整数。 如果是这样,请在进行比较之前参考此处以确保两个数组的类型相同。
`
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.