如何使用 pandas 找到基于另一个值的值的唯一出现?

数据挖掘 Python 熊猫
2022-02-16 20:51:28

下面是我的数据集。


Student_code   Subject
___________    _______
123            Maths
123            Chemistry
124            Maths
125            Chemistry
126            Physics
126            Maths
127            Physics
127            Chemistry

我想查找刚注册一门课程的学生人数。在这个例子中,给定“数学”,我应该得到 1 作为答案,因为学生 id 124 只注册了数学。

1个回答

假设您要返回只上过一堂课的学生,您可以使用groupbyand filter

df.groupby('Student_code', as_index=False).filter(lambda x: x['Subject'].count() ==1 )

  Student_code    Subject
3          124      Maths
4          125  Chemistry