【发布时间】:2023-01-03 06:37:38
【问题描述】:
我有两个数据框,我想比较两者并打印 df1 中不存在的值。 例子:
df1 = |id|check_column1| |21|abc| |21||公元前| |22|hqo| |22|高速| |23|米诺|
df2 =
|id|check_column1| |21|abc| |22|hqo| |23|xyz|
我想要输出为 |id|check_column1|chack_colum2| |23|mno|xyz|
我不希望输出包含 21-bcd 和 22-hsd,它们的值已经存在于 df1 中。如果 df1 中有 2 个值,而 df2 中有 1 个值,则表示相同的 id,我不想将该 id 视为未匹配项。
df = pd.merge(df1,df2,left_on =['id',df1.groupby('id').cumcount()], right_on = ['id',df2.groupby('id').cumcount()] )
但这给出了我想要的所有未命中匹配项,它们在两个表中都完全不同
【问题讨论】:
标签: python pandas dataframe group-by merge