Pandas Series 的 idxmax() 方法是如何工作的?


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

众所周知,Pandas Series 是一种带轴标签的一维数据结构对象。我们可以通过对 Series 对象应用 idxmax() 方法来访问 Series 对象的最大值的标签。

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

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

示例 1

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

# import pandas package
import pandas as pd
import numpy as np

# create a pandas series
s = pd.Series(np.random.randint(10,100, 10))
print("Series object:")
print(s)

# Apply idxmax function
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”,它表示给定 Series 元素的最大值的行名/标签名称。

示例 2

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

import pandas as pd
import numpy as np

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

# Apply idxmax function
print('Output of idxmax:',series.idxmax())

输出

输出如下:

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

Output of idxmax: Red

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

更新于: 2022年3月7日

408 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告