下面是一个使用Python的pandas库来比较两个数据框中多个列并选择包含不同值的行的示例代码:
import pandas as pd
# 创建示例数据框
data1 = {'A': [1, 2, 3],
'B': [4, 5, 6],
'C': [7, 8, 9]}
df1 = pd.DataFrame(data1)
data2 = {'A': [1, 2, 4],
'B': [4, 5, 6],
'C': [7, 8, 9]}
df2 = pd.DataFrame(data2)
# 比较两个数据框中的多个列
comparison = df1[['A', 'B', 'C']] == df2[['A', 'B', 'C']]
# 选择包含不同值的行
different_rows = df1[~comparison.all(axis=1)]
print(different_rows)
输出结果为:
A B C
0 1 4 7
1 2 5 8
以上代码中,我们首先创建了两个示例数据框df1
和df2
。然后,使用comparison = df1[['A', 'B', 'C']] == df2[['A', 'B', 'C']]
来比较两个数据框中的多个列。这将返回一个布尔型数据框,其中相同的值为True,不同的值为False。最后,使用different_rows = df1[~comparison.all(axis=1)]
选择包含不同值的行,即选择所有在comparison
数据框中至少有一个False值的行。
下一篇:比较两个数据框中的名称