在没有重复行的情况下,列及其对应行中的最大值



我有一个类似的数据集

df=pd.DataFrame({'name':["a","b","c","a","a","a"],
'score':[100, 98, 99,100,100,100],
'job':["m","n","o","m","m","m"]})

我想找到得分最高的名字(得分为"100"的"a"(

我试过这个代码

df[['name','score']][df.score == df.score.max()]

输出就像这个

name    score
0      a       100
3      a       100
4      a       100
5      a       100

如何摆脱重复的行并显示一行?

您可以使用drop_duplicates:

df[['name','score']][df.score == df.score.max()].drop_duplicates()
name  score
0    a    100

最新更新