Pandas识别一列中具有匹配值而不是另一列中的值的记录
我特别需要找到“col1_x”值与另一行的相同列值匹配的行,并且它匹配的行具有不同的“col1_y”值。
我有点难住了。
基础套装
col1_x col2 col1_y
0 1 brad 37
1 2 tom 55
2 3 tom 55
3 2 sally 28
预期结果
col1_x col2 col1_y
1 2 tom 55
3 2 sally 28
回答
我特别需要找到“col1_x”值与另一行的相同列值匹配的行,
这可以通过查找重复项来完成
并且与它匹配的行具有不同的 'col1_y' 值。
这可以通过查找非重复项来完成。这样的事情应该工作:
df[(df.col1_x.duplicated(keep=False))&(~df.col1_y.duplicated())]