NumPy argmax()函数详解:获取数组元素最大值的索引

NumPy的argmax()函数可以用来获取数组元素中最大值的索引。argmax()函数的语法格式如下:

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

其中,arr是要处理的数组,axis是指定的轴,out是用于接收输出结果的数组。

使用方法

下面是一个使用argmax()函数的示例:

import numpy as np

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

# 获取数组元素最大值的索引
max_index = np.argmax(arr)

# 输出结果
print(max_index)

运行上面的代码,可以得到输出结果:

8

可以看到,这里的输出结果是8,表示数组arr中最大值的索引是8,也就是arr[2,2],即数组中的第3行第3列,值为9。

如果要获取指定轴上的最大值的索引,可以使用axis参数,比如:

# 获取数组指定轴上元素最大值的索引
max_index = np.argmax(arr, axis=0)

# 输出结果
print(max_index)

运行上面的代码,可以得到输出结果:

[2, 2, 2]

可以看到,这里的输出结果是[2,2,2],表示数组arr指定轴上最大值的索引是[2,2,2],也就是arr[2,0],arr[2,1],arr[2,2],分别对应的值为7,8,9。

如果要将输出结果存入指定的数组,可以使用out参数,比如:

# 定义一个空数组
out_arr = np.empty(3)

# 获取数组元素最大值的索引,并将结果存入out_arr
max_index = np.argmax(arr, out=out_arr)

# 输出结果
print(out_arr)

运行上面的代码,可以得到输出结果:

[2. 2. 2.]

可以看到,这里的输出结果是[2. 2. 2.],表示数组arr中最大值的索引是[2,2,2],也就是arr[2,0],arr[2,1],arr[2,2],分别对应的值为7,8,9,并且结果存入了out_arr。

NumPy的argmax()函数可以用来获取数组元素中最大值的索引,可以指定轴,也可以将结果存入指定数组。

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

展开阅读全文