看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
argmin()
方法是 Pandas 中用于查找最小值在轴方向上的索引位置的一种方法。它适用于 Index
和 Series
数据类型。
argmin()
方法主要用于以下两种数据类型:
pandas.Index
pandas.Series
返回序列中最小值的int位置。如果在多个位置达到最小值,则返回第一行位置。
argmin(axis=None, skipna=True, *args, **kwargs)
axis
:这个参数主要在 DataFrame
中使用,而 Index
和 Series
数据类型是不需要指定该参数的。在 Index
和 Series
中,该参数始终为 None
。skipna
:布尔类型,表示是否在计算时跳过缺失值 (NaN
)。默认值为 True
,即忽略缺失值。如果设为 False
,则如果有缺失值,会返回缺失值所在的位置。*args
:额外的位置参数,目前主要是为了兼容性存在,通常不需要用到。与NumPy兼容的其他参数和关键字。**kwargs
:额外的关键字参数,目前也主要是为了兼容性存在,通常不需要用到。与NumPy兼容的其他参数和关键字。该方法返回最小值在 Series
或 Index
中的位置索引。注意,这个索引是基于行号的索引,而不是基于标签的索引。
argmin()
方法可以用在需要快速定位最小值的位置的场景中,比如在金融数据分析中寻找最小的价格点,或者在数据清洗过程中定位最小的非缺失值等。
import pandas as pd
# 构造一个 Series
s = pd.Series([4, 7, 1, 3, 6])
# 查找最小值的位置
min_index = s.argmin()
# 输出
print(f"Series 数据: \n{s}")
print(f"最小值的索引位置: {min_index}")
输出结果:
Series 数据:
0 4
1 7
2 1
3 3
4 6
dtype: int64
最小值的索引位置: 2
# 构造一个带有缺失值的 Series
s_with_nan = pd.Series([4, float('nan'), 1, 3, 6])
# 查找最小值的位置,跳过缺失值
min_index_skipna = s_with_nan.argmin()
# 查找最小值的位置,不跳过缺失值
min_index_no_skipna = s_with_nan.argmin(skipna=False)
# 输出
print(f"带有缺失值的 Series 数据: \n{s_with_nan}")
print(f"跳过缺失值后的最小值索引位置: {min_index_skipna}")
print(f"不跳过缺失值后的最小值索引位置: {min_index_no_skipna}")
输出结果:
带有缺失值的 Series 数据:
0 4.0
1 NaN
2 1.0
3 3.0
4 6.0
dtype: float64
跳过缺失值后的最小值索引位置: 2
不跳过缺失值后的最小值索引位置: 1
# 构造一个 Index
index = pd.Index([10, 15, 5, 8, 12])
# 查找最小值的位置
min_index_in_index = index.argmin()
# 输出
print(f"Index 数据: \n{index}")
print(f"最小值的索引位置: {min_index_in_index}")
输出结果:
Index 数据:
Int64Index([10, 15, 5, 8, 12], dtype='int64')
最小值的索引位置: 2
argmin()
是一个简单但实用的方法,适用于 Series
和 Index
类型数据的最小值索引查找。它的主要优势在于快速定位最小值的位置,特别是在处理大规模数据集时显得非常高效。通过 skipna
参数,可以灵活地处理包含缺失值的数据。
更新时间:2024-08-13 08:55:35 标签:pandas python argmin 最小值 索引