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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。