numpy.nanargmin() in Python
Last Updated :
08 Mar, 2024
The numpy.nanargmin() function returns indices of the min element of the array in a particular axis ignoring NaNs.
The results cannot be trusted if a slice contains only NaNs and Infs.
Syntax:
numpy.nanargmin(array, axis = None)
Parameters :
array : Input array to work on
axis : [int, optional]Along a specified axis like 0 or 1
Return :
Array of indices into the array with same shape as array.shape.
with the dimension along axis removed.
Code 1 :
Python
import numpy as geek
array = [geek.nan, 4 , 2 , 3 , 1 ]
print ( "INPUT ARRAY 1 : \n" , array)
array2 = geek.array([[geek.nan, 4 ], [ 1 , 3 ]])
print ( "\nIndices of min in array1 : " ,
geek.nanargmin(array))
print ( "\nINPUT ARRAY 2 : \n" , array2)
print ( "\nIndices of min in array2 : " ,
geek.nanargmin(array2))
print ( "\nIndices at axis 1 of array2 : " ,
geek.nanargmin(array2, axis = 1 ))
|
Output :
INPUT ARRAY 1 :
[nan, 4, 2, 3, 1]
Indices of min in array1 : 4
INPUT ARRAY 2 :
[[ nan 4.]
[ 1. 3.]]
Indices of min in array2 : 2
Indices at axis 1 of array2 : [1 0]
Code 2 : Comparing working of argmin and nanargmin
Python
import numpy as geek
array = ( [[ 8 , 13 , 5 , 0 ],
[ geek.nan, geek.nan, 5 , 3 ],
[ 10 , 7 , 15 , 15 ],
[ 3 , 11 , 4 , 12 ]])
print ( "INPUT ARRAY : \n" , array)
print ( "\nIndices of min using argmin : " ,
geek.argmin(array, axis = 0 ))
print ( "\nIndices of min using nanargmin : : " ,
geek.nanargmin(array, axis = 0 ))
|
Output :
INPUT ARRAY :
[[ 8 13 5 0]
[ 0 2 5 3]
[10 7 15 15]
[ 3 11 4 12]]
Indices of min element : [1 1 3 0]
Note :
These codes won’t run on online IDE’s. So please, run them on your systems to explore the working.
Share your thoughts in the comments
Please Login to comment...