NumPy 函数

NumPy argmax() 函数返回沿轴的最大值的索引。默认情况下,它是在展平数组上计算的,否则是在指定轴上计算的。

语法

numpy.argmax(a, axis=None, out=None) 

参数

a必填。 指定输入数组。
axis可选。 指定计算最大值索引所沿的一个或多个轴。默认情况下是在展平数组上计算它。
out可选。 指定结果的输出数组。默认值为"无"。如果提供,它必须具有与输出相同的形状。

返回值

当out=None,返回一个包含最大值索引的数组,否则返回对输出数组的引用。

示例:

在下面的示例中,argmax() 函数用于查找整个数组中最大值的索引。

import numpy as np
Arr = np.arange(12).reshape(3,4)

print("Array is:")
print(Arr)

#最大值索引
idx = np.argmax(Arr)
print("\n最大值索引:", idx) 

上述代码的输出将是:

Array is:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

最大值索引: 11 

示例:

当轴提供了参数,可以计算指定轴上的最大值索引。考虑以下示例。

import numpy as np
Arr = np.arange(12).reshape(3,4)

print("Array is:")
print(Arr)

#沿轴最大值索引=0
print("\n沿轴最大值索引=0")
print(np.argmax(Arr, axis=0))

#沿轴最大值索引=1
print("\n沿轴最大值索引=1")
print(np.argmax(Arr, axis=1)) 

上述代码的输出将是:

Array is:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

沿轴最大值索引=0
[2 2 2 2]

沿轴最大值索引=1
[3 3 3] 

示例:

当数组包含多个时最大值,函数返回第一次出现的索引。

import numpy as np
Arr = [10, 20, 50, 20, 30, 50, 50]

print("Array is:", Arr)

#最大值索引
print("最大值索引:", np.argmax(Arr)) 

上述代码的输出将是:

Array is: [10, 20, 50, 20, 30, 50, 50]
最大值索引: 2