python - 如何获取 Pandas 数据框列的最大值并在另一列中找到相应的值?

标签 python pandas dataframe max

我想获取 pandas dataframe 列的最大值并在另一列中找到相应的值?假设最大值中没有重复项,因此您总是只返回一个值。例如,

GPA   ID
2.3  Tina1
3.4  Bob1
3.6  Lia1
2.9  Tina2
4.0  Blake1
4.5  Conor2

此处最大 GPA 为 4.5,但我想返回最大 GPA 对应的 id,因此我将返回 Conor2。我不确定如何执行此操作,因此将不胜感激 :) 谢谢!

最佳答案

你可以使用

df.loc[df.GPA == df.GPA.max(), 'ID']

你得到

5    Conor2

如果您不想要索引而只想要值,请尝试

df.loc[df.GPA == df.GPA.max(), 'ID'].values[0]

你得到

'Conor2'

关于python - 如何获取 Pandas 数据框列的最大值并在另一列中找到相应的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44938796/

相关文章:

python - 如何在scrapy spider中传递用户定义的参数

python - 使用 Cython 进行扩展,名称与源文件不同

python - 什么 python 的 Pandas 数据支柱用于?

python - Pandas (python) : How to add column to dataframe for index?

python - 应用数据帧方法后 numpy 数组末尾的额外数据类型

python - 使用python将字符串转换为格式

python - 内置 python 模块(即 sys)的 Intellij 未解析引用

pandas - 使用 pandas/beautiful soup 抓取表数据(而不是慢的 Selenium?),BS 实现不起作用

python - 将 pandas 中的 2 列映射到第三列

数据帧列中的 Python 正则表达式