You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas中获取某列唯一最大值对应的行索引名?

在Pandas中获取最大值所在行的索引名称

嘿,这个需求其实很容易解决,Pandas有现成的方法,而且还有几种不同的思路,我给你详细说说:

方法一:直接用idxmax()(最简洁)

Pandas的Series对象自带idxmax()方法,专门用来返回最大值对应的索引标签——刚好符合你的需求,而且因为你说最大值唯一,不用处理多个结果的情况,直接调用就行:

import pandas as pd

# 举个示例DataFrame
df = pd.DataFrame({
    'score': [85, 92, 78, 95, 88],
    'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve']
}, index=['row1', 'row2', 'row3', 'row4', 'row5'])

# 获取'score'列最大值所在的索引名称
max_index = df['score'].idxmax()
print(max_index)  # 输出: row4

这个方法一步到位,代码最简洁,是首选方案。

方法二:先找最大值再定位索引

如果你需要先拿到最大值本身,再去匹配对应的索引,可以这么做:

# 先获取列的最大值
max_value = df['score'].max()

# 通过布尔索引筛选出最大值所在的行,再取索引
max_index = df[df['score'] == max_value].index[0]
print(max_index)  # 输出: row4

因为你明确说最大值唯一,所以用index[0]直接取第一个结果就没问题。

两种方法都能完美解决你的问题,根据你是否需要用到最大值本身来选就行~

内容的提问来源于stack exchange,提问作者ZakS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:13:38