首页 > 解决方案 > Pandas 过滤来自多列的值

问题描述

我想找到具有不同产品的 id。在这里,答案是 id-1,2 和 4,因为它有不同的产品。答案不是 id 3 因为 id 3 有类似的产品。

如何在 Python 中编写程序来过滤结果?

   id prod
0   1    a
1   1    l
2   2    l
3   2    a
4   3    a
5   3    a
6   3    a
7   4    l
8   4    a

标签: pandasfiltermultiple-columns

解决方案


IIUC,您可以使用:

df.loc[~df.duplicated(['id','prod'],keep=False),'id']
#or df.drop_duplicates(keep=False)['id']

0    1
1    1
2    2
3    2
7    4
8    4

推荐阅读