pandas Series idxmax() 方法如何工作?

pandasserver side programmingprogramming更新于 2025/5/20 14:37:17

pandas series 构造函数的 idxmax() 方法用于获取系列数据中最大值的索引标签。

众所周知,pandas series 是一个带有轴标签的一维数据结构对象。我们可以通过将 idxmax() 方法应用于该系列对象来访问该系列对象的最大值的标签。

idxmax 方法的输出是一个索引值,它指的是最大值所在的标签名称或行索引。idxmax() 方法的数据类型与系列索引标签的类型相同。

如果最大值在多个位置可用,则 idxmax 方法将返回第一行标签名称作为输出。如果给定的系列对象没有任何值(空系列),则该方法将返回值错误。

示例 1

让我们创建一个 pandas 系列对象,其中包含 10 到 100 范围内的 10 个随机整数值,并应用 idxmax() 函数获取系列元素中最大值的标签名称。

# 导入 pandas 包
import pandas as pd
import numpy as np

# 创建一个 pandas 系列
s = pd.Series(np.random.randint(10,100, 10))
print("Series object:")
print(s)

# 应用 idxmax 函数
print('Output of idxmax:')
print(s.idxmax())

输出

输出如下 −

Series object:
0    40
1    80
2    86
3    29
4    60
5    69
6    55
7    96
8    91
9    74
dtype: int32

Output of idxmax:
7

以下示例中 idxmax() 方法的输出为"7",它表示给定系列元素的最大值的行名称/标签名称。

示例 2

在下面的示例中,我们使用 Python 字典创建了一个 pandas Series 对象"series",该系列具有使用整数值命名的索引标签。之后,我们应用 idxmax() 方法获取最大数字的标签名称。

import pandas as pd
import numpy as np

# 创建 pandas Series 对象
series = pd.Series({'Black':78, 'White':52,'Red':94, 'Blue':59,'Green':79})
print(series)

# 应用 idxmax 函数
print('Output of idxmax:',series.idxmax())

输出

输出如下所示 −

Black    78
White    52
Red      94
Blue     59
Green    79
dtype: int64

Output of idxmax: Red

正如我们在上面的输出块中看到的,idxmax() 方法的输出是"Red"。它是该特定行的名称,是系列元素中的最大数字。


相关文章