Pandas Series的idxmax()方法是如何工作的
pandas Series构造函数的idxmax()方法用于获取系列数据中最大值的索引标签。
正如我们所知,pandas系列是一个带有轴标签的单维数据结构对象。通过将idxmax()方法应用于该系列对象,我们可以访问系列对象中最大值的标签。
idxmax方法的输出是一个索引值,它指的是最大值存在的标签名称或行索引。idxmax()方法的数据类型与系列的索引标签具有相同的类型。
如果最大值在多个位置都可用,则idxmax方法将返回第一个行标签名作为输出。如果给定的系列对象没有任何值(空系列),则该方法将返回ValueError。
示例1
让我们创建一个包含10个在10到100范围内的随机整数值的pandas系列对象,并应用idxmax()函数来获取系列元素的最大值的标签名称。
# 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”,它表示给定系列元素的最大值的行名/标签名。
示例2
在下面的示例中,我们使用Python字典创建了一个pandas 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”。它是该系列元素中最大数值对应行的名称。