关于Pandas版本: 本文基于 pandas2.2.0 编写。
关于本文内容更新: 随着pandas的stable版本更迭,本文持续更新,不断完善补充。
传送门: Pandas API参考目录
传送门: Pandas 版本更新及新特性
传送门: Pandas 由浅入深系列教程
本节目录
Pandas.Series.idxmax()
Series.idxmax
用于返回最大值第一次出现位置的行索引。
语法:
Series.idxmax(*axis=0, skipna=True, *args, *kwargs)
返回值:
-
Index
返回值是第1个最大值的行索引
参数说明:
axis 指定查找方向(行或列)
axis:*{0 or ‘index’}
axis
参数对 Series
无效。
skipna 是否排除 缺失值
skipna:bool, default True
skipna
参数用于控制是否排除缺失值,默认 skipna=Ture
表示排除缺失值:
- True 排除缺失值。
- False 不排除缺失值。
⚠️ 注意 :
不建议设置为
skipna=False
。因为当skipna=False
,一旦Series
出现缺失值,将引发报错ValueError
。 例1
*args, *kwargs
为了保持和 Numpy
兼容而保留的参数。一般不需要传值。
相关方法:
➡️ 相关方法
最大值索引
示例:
测试文件下载:
本文所涉及的测试文件,如有需要,可在文章顶部的绑定资源处下载。
若发现文件无法下载,应该是资源包有内容更新,正在审核,请稍后再试。或站内私信作者索要。
示例1:缺失值对计算结果的影响
示例1-1、构建演示数据
import numpy as np
import pandas as pd
s = pd.Series([np.NaN, 103.11, 103.11, 55.48], index=["第一行", "第二行", "第三行", "第四行"])
s
第一行 NaN
第二行 103.11
第三行 103.11
第四行 55.48
dtype: float64
示例1-2、观察排除缺失值(保持默认)时,最大值首次出现的位置
s.idxmax()
'第二行'
示例1-3、不排除缺失值
df.idxmax(skipna=False)
C:\Users\Administrator\AppData\Local\Temp\ipykernel_609288\35380768.py:1: FutureWarning: The behavior of Series.idxmax with all-NA values, or any-NA and skipna=False, is deprecated. In a future version this will raise ValueError
df.idxmax(skipna=False)
nan