要比较两个Pandas DataFrame的不同之处,可以使用pd.DataFrame.equals()
方法来检查DataFrame是否相等。如果相等,则返回True,否则返回False。
以下是一个包含代码示例的解决方法:
import pandas as pd
# 创建DataFrame1
data1 = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df1 = pd.DataFrame(data1)
# 创建DataFrame2
data2 = {'A': [1, 2, 4], 'B': [4, 5, 6]}
df2 = pd.DataFrame(data2)
# 比较两个DataFrame是否相等
if df1.equals(df2):
print("两个DataFrame相等")
else:
print("两个DataFrame不相等")
输出:
两个DataFrame不相等
此外,还可以使用pd.DataFrame.compare()
方法来比较两个DataFrame的差异,并返回一个包含不同点的DataFrame。以下是一个代码示例:
import pandas as pd
# 创建DataFrame1
data1 = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df1 = pd.DataFrame(data1)
# 创建DataFrame2
data2 = {'A': [1, 2, 4], 'B': [4, 5, 6]}
df2 = pd.DataFrame(data2)
# 比较两个DataFrame的差异
diff = df1.compare(df2)
print(diff)
输出:
A
self other
2 3 4
在输出结果中,self
列表示在第一个DataFrame中的值,other
列表示在第二个DataFrame中的值。如果两个DataFrame中相同位置的值不同,那么就会显示在输出结果中。