numpy.nanargmin() in Python
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
# Python Program illustrating# working of nanargmin()import numpy as geek# Working on 1D arrayarray = [geek.nan, 4, 2, 3, 1]print("INPUT ARRAY 1 : \n", array)array2 = geek.array([[geek.nan, 4], [1, 3]])# returning Indices of the min element# as per the indices ingnoring NaNprint("\nIndices of min in array1 : ", geek.nanargmin(array))# Working on 2D arrayprint("\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
# Python Program illustrating# working of nanargmin()import numpy as geek# Working on 2D arrayarray = ( [[ 8, 13, 5, 0], [ geek.nan, geek.nan, 5, 3], [10, 7, 15, 15], [3, 11, 4, 12]])print("INPUT ARRAY : \n", array)# returning Indices of the min element# as per the indices''' [[ 8 13 5 0] [ 0 2 5 3] [10 7 15 15] [ 3 11 4 12]] ^ ^ ^ ^ 0 2 4 0 - element 1 1 3 0 - indices'''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]
References :
https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.nanargmin.html
Note :
These codes won’t run on online-ID. Please run them on your systems to explore the working
.
This article is contributed by Mohit Gupta_OMG 😀. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.
To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course




