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.
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...