numpy.argmax(a, axis=None, out=None)
返回沿轴axis最大值的索引。
注释:
a:array_like数组
axis:int类型,轴
out:(可选)如果提供,结果以合适的形状和类型被插入到此数组中`
下面我将用代码给大家详细介绍该函数的用法
import numpy as np
#一维数组用法
a = np.arange(10)
print(a)
print("*"*100)
print(np.argmax(a))#此时等价axis=0
print(np.argmax(a, axis=0))
[0 1 2 3 4 5 6 7 8 9]
****************************************************************************************************
9
9
import numpy as np
#二维数组用法
a = np.array([[1, 5, 5, 2],
[4, 6, 2, 8],
[3, 7, 9, 1]])
print(a)
print("*"*100)
print(np.argmax(a, axis=0)) #每一列的最大值的索引 返回一个数组
print(np.argmax(a)) #不加axis则是寻找全数组的最大值索引 返回一个int值
print(np.argmax(a, axis=1)) #每一行的最大值的索引 返回一个数组
[[1 5 5 2]
[4 6 2 8]
[3 7 9 1]]
****************************************************************************************************
[1 2 2 1]
10
[1 3 2]
import numpy as np
#三维数组的用法
a = np.array([
[
[1, 5, 5, 2],
[3, -6, 2, 8],
[-3, 7, -9, 1]
],
[
[-1, 5, -5, 2],
[9, 6, 2, 8],
[3, 7, 3, 1]
]
])
print(a)
print(a.shape) #这是个2*3*4的数组
print("*"*100)
print(np.argmax(a)) #返回整个数组的最大值,相当把这个数组变成一维数组,再去寻找其最大值索引
print(np.argmax(a, axis=0)) #大数组中两个小数组相对应的值进行比较 返回较大值的索引
print(np.argmax(a, axis=1)) #两个小数组中分别按列进行比较,返回较大值的索引
print(np.argmax(a, axis=2)) #两个小数组中分别按行进行比较,返回较大值的索引
[[[ 1 5 5 2]
[ 3 -6 2 8]
[-3 7 -9 1]]
[[-1 5 -5 2]
[ 9 6 2 8]
[ 3 7 3 1]]]
(2, 3, 4)
****************************************************************************************************
16
[[0 0 0 0]
[1 1 0 0]
[1 0 1 0]]
[[1 2 0 1]
[1 2 2 1]]
[[1 3 1]
[1 0 1]]
该函数的用法我就给大家介绍到这里,谢谢大家