當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python numpy.nanargmax()用法及代碼示例


numpy.nanargmax(array,axis = None):返回忽略NaN的特定軸上數組的max元素的索引。
如果切片僅包含NaN和Inf,則結果將不可信任。
參數:

array : Input array to work on 
axis  : [int, optional]Along a specified axis like 0 or 1

返回:

Array of indices into the array with same shape as array.shape
 with the dimension along axis removed.

代碼1:


# Python Program illustrating 
# working of nanargmax() 
  
import numpy as geek  
  
# Working on 1D array 
array = [geek.nan, 4, 2, 3, 1] 
print("INPUT ARRAY 1 : \n", array) 
  
array2 = geek.array([[geek.nan, 4], [1, 3]]) 
  
# returning Indices of the max element 
# as per the indices ingnoring NaN 
print("\nIndices of max in array1 : ", geek.nanargmax(array)) 
  
# Working on 2D array 
print("\nINPUT ARRAY 2 : \n", array2) 
print("\nIndices of max in array2 : ", geek.nanargmax(array2)) 
  
print("\nIndices at axis 1 of array2 : ", geek.nanargmax(array2, axis = 1))

輸出:

INPUT ARRAY 1 : 
 [nan, 4, 2, 3, 1]

Indices of max in array1 :  1

INPUT ARRAY 2 : 
 [[ nan   4.]
 [  1.   3.]]

Indices of max in array2 :  1

Indices at axis 1 of array2 :  [1 1]

代碼2:比較argmax和nanargmax的工作

# Python Program illustarting 
# working of nanargmax() 
  
import numpy as geek  
  
# Working on 2D array 
array = ( [[ 8, 13, 5, 0], 
           [ 16, geek.nan, 5, 3], 
           [geek.nan, 7, 15, 15], 
           [3, 11, 4, 12]]) 
print("INPUT ARRAY : \n", array) 
  
# returning Indices of the max element 
# as per the indices  
  
'''    
   [[ 8 13  5  0] 
   [ 16  2  5  3] 
   [10  7 15 15] 
   [ 3 11  4 12]] 
     ^  ^  ^  ^ 
       
'''
  
print("\nIndices of max using argmax : ", geek.argmax(array, axis = 0)) 
print("\nIndices of max using nanargmax :  : ", geek.nanargmax(array, axis = 0))

輸出:

INPUT ARRAY : 
 [[8, 13, 5, 0], [16, nan, 5, 3], [nan, 7, 15, 15], [3, 11, 4, 12]]

Indices of max using argmax :  [2 1 2 2]

Indices of max using nanargmax :  :  [1 0 2 2]

參考文獻:
https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.nanargmax.html#numpy.nanargmax

注意:
這些代碼無法在online-ID上運行。請在您的係統上運行它們以探索其工作原理。



相關用法


注:本文由純淨天空篩選整理自 numpy.nanargmax() in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。