在两个数据帧之间查找不匹配的行

时间:2020-09-28 07:56:36

标签: python pandas dataframe

我有一种情况,我想在两个数据帧之间查找不匹配的行。两个数据框都将包含约30列和一个id列,它们唯一地标识每个记录/行。因此,我想检查df1中的行与df2中的行是否不同。 df1是更新的数据框,而df2是先前的版本。

我尝试了一种方法pd.concat([df1, df2]).drop_duplicates(keep=False),但是它只是结合了两个数据帧。有没有办法做到这一点。我非常感谢您的帮助。

dfs的示例数据如下。

id user_id type status

总共有39列,其中可能包含NULL值。

谢谢。

P.S。 df2将始终是df1的子集。

1 个答案:

答案 0 :(得分:0)

如果df1和df2的形状相同,则可以轻松地与以下代码进行比较。

df3 = pd.DataFrame(np.where(df1==df2,True,False), columns=df1.columns)

您将看到布尔输出“ False”,表示单元格值不匹配。