📜  Python中的numpy.argmax

📅  最后修改于: 2020-06-07 05:31:09             🧑  作者: Mango

numpy.argmax(array, axis = None, out = None) : 返回特定轴上数组max元素的索引。

参数:

array:要处理的输入数组
axis:[int,可选]沿指定的轴,如0或1
out:[array optional]提供将输出插入到out的功能
array,并且应该具有适当的形状和dtype

 

返回:

指向数组的索引数组,其形状与array.shape相同,但沿轴的尺寸已删除。

 

代码1:

# Python程序说明argmax()的工作 
  
import numpy as geek  
  
# 处理二维阵列 
array = geek.arange(12).reshape(3, 4) 
print("输入数组 : \n", array) 
  
# 未提及轴,因此适用于整个阵列 
print("\n最大值元素 : ", geek.argmax(array)) 
  
# 根据索引返回最大元素的索引 
print("\n最大值元素的索引 : ", geek.argmax(array, axis=0)) 
print("\n最大值元素的索引 : ", geek.argmax(array, axis=1)) 

输出:

输入数组:
 [[0 1 2 3] 
 [4 5 6 7] 
 [8 9 10 11]] 

最大值元素:11 

最大值元素的索引:[2 2 2 2] 

最大值元素的索引:[3 3 3]

代码2:

# argmax()的Python程序说明工作
  
import numpy as geek  
  
# 处理二维阵列 
array =  geek.random.randint(16, size=(4, 4)) 
print("INPUT ARRAY : \n", array) 
  
# 未提及轴,因此适用于整个阵列 
print("\nMax element : ", geek.argmax(array)) 
  
# 根据索引返回最大元素的索引 
  
'''    
   [[ 0  3  8 13] 
    [12 11  2 11] 
    [ 5 13  8  3] 
    [12 15  3  4]] 
      ^  ^  ^  ^ 
     12 15  8  13  - element 
     1  3   0  0   - indices 
'''
print("\n最大值元素的索引 : ", geek.argmax(array, axis = 0)) 
  
  
'''    
                            ELEMENT   INDEX 
   ->[[ 0  3  8 13]           13        3 
    ->[12 11  2 11]           12        0 
    ->[ 5 13  8  3]           13        1 
    ->[12 15  3  4]]          15        1 
        
'''
print("\n最大值元素的索引 : ", geek.argmax(array, axis = 1)) 

输出:

输入数组:
 [[0 3 8 13] 
  [12 11 2 11] 
  [5 13 8 3] 
  [12 15 3 4]] 

最大值元素:15 

最大值元素的索引:[1 3 0 0] 

最大值元素的索引:[[ 3 0 1 1]

代码3:

# argmax()的Python程序说明工作
  
import numpy as geek  
  
# 处理二维阵列 
array =  geek.arange(10).reshape(2, 5) 
print("数组 : \n", array) 
  
array[0][1] = 6
print("\n数组 : \n", array) 
       
# 返回最大元素 
print("\n数组 : ", geek.argmax(array)) 
  
# 第一次出现最大元素 
print("\n最大元素指数 : ", geek.argmax(array, axis = 0)) 

输出:

数组:
 [[0 1 2 3 4] 
 [5 6 7 8 9]] 

数组:
 [[0 6 2 3 4] 
 [5 6 7 8 9]] 

数组:9个

最大元素指数:[1 0 1 1 1]