Python datacompy 找出两个DataFrames不同的地方

本篇博客解决在两个几乎完全相同的DataFrame当中如何找出不相同的元素,并使用datacompy直观的显示出来。

x表:
Python datacompy 找出两个DataFrames不同的地方_第1张图片

让x1和x2都是x的副本,则此时x1和x2的值是相同:

x1=x.copy()
x2=x.copy()

将其中x2的一个数据赋值为2000

x2.loc['罗梓烜']['20220125']=2000
x1[x1==x2].head(25) # 如何对不相等的数据进行纠正

此时可以看到下图这个数据是NaN值,说明对于这个数据来说x1和x2是不相同的
Python datacompy 找出两个DataFrames不同的地方_第2张图片

x1[x1==x2].isnull().sum()

下图说明在20220125这一列当中存在一个NaN值,也就是我们刚刚赋值的地方:
Python datacompy 找出两个DataFrames不同的地方_第3张图片
但是现在还是不能确定出有异常值(也就是不相等的值的那行数据),因此我们考虑使用datacompy

安装:

!pip install datacompy
import datacompy,pandas as pd,sys
compy=datacompy.Compare(x1,x2,on_index=True)
compy
print(compy.matches())
print(compy.report())

此时就可以很清晰的看到两个DataFrame当中不相同的值了:
Python datacompy 找出两个DataFrames不同的地方_第4张图片

你可能感兴趣的:(Phthon,#,大数据分析,python,自然语言处理,数据挖掘)