我有一个问题,我需要根据他们完成的不同学位为特定候选人选择最高学位。要选择最高学位,应遵循以下顺序:
PHD>MBA>硕士>学士>其他
PHD 优先级最高,其他最低
数据框如下所示:
ID Degree
1 Bachelors
1 Masters
1 PHD
2 Bachelors
2 Others
3 PHD
3 Masters
输出应该是这样的:
ID Degree
1 PHD
2 Bachelors
3 PHD
我什至不知道如何从这个要求开始,因此无法在此处添加任何代码片段。
最佳答案
如果我理解正确,我们做 Categorical
,然后 sort_values
+ drop_duplicates
:
df.Degree = pd.Categorical(df.Degree, ordered=True,
categories='PHD>MBA>Masters>Bachelors>Others'.split('>')[::-1])
Yourdf=df.sort_values('Degree').drop_duplicates('ID',keep='last')
ID Degree
3 2 Bachelors
2 1 PHD
5 3 PHD
关于python - Pandas 提取最高程度的资格基础重要性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60041948/