Python如何从三个数据集中找到不匹配的记录

2024-06-25 22:43:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我定义了三个数据帧df1、df2和df3。我需要一个简单的方法来查找df1、df2和df3之间不匹配的记录。它与这些数据帧的交集相反。如果我将它与sqlworld进行比较,它可以通过这三个表之间的左外部联接和对空列进行过滤来获得不匹配的记录。如何在Python中轻松实现这一点?在


Tags: 数据方法定义记录df1df2df3空列
2条回答
merged_df = pd.merge(df1, df2, how='outer', on='[your index]').merge(df3, how='outer', on='[your index]')

result = merged_df.loc[~merged_df.index.isin(merged_df.dropna().index)]

结果就是你想要的。在

如果要通过数据帧的特定列进行联接,可以执行以下操作:

indexes = df1[(df1[TARGET_COLUMN]!=df2[TARGET_COLUMN]) | (df1[TARGET_COLUMN]!=df3[TARGET_COLUMN])].index

其中TARGET_列应该是列的名称。在

如果要在整行之间进行比较,可以使用:

^{pr2}$

相关问题 更多 >