Pandas 数据对比
时间: 2023-11-06 10:05:44 浏览: 78
在Pandas中,可以使用`pd.DataFrame.equals()`函数对两个DataFrame进行对比,该函数返回一个布尔值,表示两个DataFrame是否完全相同。
除此之外,还可以使用`pd.testing.assert_frame_equal()`函数对两个DataFrame进行对比,该函数会在两个DataFrame不相同时引发一个异常,以便于进行调试。
这两个函数都可以比较两个DataFrame的行、列、数据类型以及缺失值等方面的差异。如果两个DataFrame具有相同的形状、索引和数据,则返回True,否则返回False。
例如,比较df1和df2两个DataFrame:
```
import pandas as pd
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [1, 2, 4], 'B': [4, 5, 6]})
# 使用equals()函数对比DataFrame
print(df1.equals(df2)) # False
# 使用assert_frame_equal()函数对比DataFrame
pd.testing.assert_frame_equal(df1, df2) # 异常:AssertionError
```
在上面的例子中,df1和df2的'A'列在第三行的数据不同,因此`df1.equals(df2)`返回False,同时`pd.testing.assert_frame_equal(df1, df2)`会引发一个AssertionError异常。
阅读全文