熊猫:根据子集在另一个数据框中查找重复项

时间:2020-07-04 01:03:20

标签: python pandas duplicates subset

假设DF 1:

   A  B  C
0  1  1  1
1  1  1  2
2  2  1  1
3  1  9  0
4  9  9  9

和DF 2

   A  B  C
0  6  1  1
1  1  1  2
2  2  1  1
3  1  9  0
4  1  9  6

我想基于列的子集向DF 1添加一列,其中DF 2中有重复项:

例如

重复于

  • 1
  • 2

结果:

   A  B  C  Dupe
0  1  1  1   1
1  1  1  2   1
2  2  1  1   1
3  1  9  0   2
4  9  9  9   0

1 个答案:

答案 0 :(得分:2)

听起来应该像groupby先用df2,然后再用merge

df=df1.merge(df2.groupby(['A','B']).size().to_frame('DUP').reset_index(),how='left').fillna(0)
   A  B  C  DUP
0  1  1  1  1.0
1  1  1  2  1.0
2  2  1  1  1.0
3  1  9  0  2.0
4  9  9  9  0.0
相关问题