我有一个像这样的pandas数据框:
Player Attempt Score
John A 10
John B 20
Mary A 5
Mary B 10
如何转换数据框,以便只显示每次尝试中每位玩家的最高或最低分数?
在最大的情况下,结果如下所示:
Player Attempt Score
John B 20
Mary B 10
答案 0 :(得分:1)
这是使用groupby
+ transform
的一种方式。标记的副本具有更详细的变化。
res = df[df['Score'] == df.groupby('Player')['Score'].transform('max')]
print(res)
Player Attempt Score
1 John B 20
3 Mary B 10