关键词

详解Numpy argmax()(返回数组元素的最大值的索引)函数的作用与使用方法

Numpy argmax()函数用于返回给定数组中的最大值所在的索引位置。

它的语法格式如下:

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

参数说明:

  • arr:传入的待计算数组,必须为一维或多维数组。

  • axis:可选参数,用于指定在哪个维度上进行计算,其取值范围为0到N-1(N为数组的维度数)。

  • out:可选参数,用于指定输出结果的数组。

如果不指定axis,则按展开后数组索引的最大值计算。例如,对于一个2×3的二维数组,展开后最大值所在的索引为3,则返回3。

下面给出两个使用实例来说明argmax()函数的用法:

实例1

import numpy as np

a = np.array([[2, 4, 5], [9, 10, 1], [7, 6, 3]])

print('原数组:')
print(a)

maxIndex = np.argmax(a)

print('在展开后的一维数组中,最大值所在的索引为:', maxIndex)

maxIndex = np.argmax(a, axis=0)

print('在每列中,最大值所在的索引为:', maxIndex)

maxIndex = np.argmax(a, axis=1)

print('在每行中,最大值所在的索引为:', maxIndex)

输出结果为:

原数组:
[[ 2  4  5]
 [ 9 10  1]
 [ 7  6  3]]
在展开后的一维数组中,最大值所在的索引为: 4
在每列中,最大值所在的索引为: [1 1 0]
在每行中,最大值所在的索引为: [2 1 0]

实例2

import numpy as np

a = np.random.rand(3, 4, 5)

maxIndex = np.argmax(a, axis=2)

print('在每个矩阵中,最大值所在的索引为:', maxIndex)

输出结果为:

在每个矩阵中,最大值所在的索引为: [[3 0 2 1]
 [2 2 2 2]
 [3 0 3 3]]

在这个例子中,我们生成了一个3×4×5的三维数组,并使用axis=2来指定在最后一个维度中计算。输出结果中,每个矩阵在最后一个维度上的最大值所在的索引被返回了。

本文链接:http://task.lmcjl.com/news/17012.html

展开阅读全文