HomeLanguagesnumpy.nanargmin() in Python

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 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 min element
# as per the indices ingnoring NaN
print("\nIndices of min in array1 : ",
      geek.nanargmin(array))
 
# Working on 2D 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




# Python Program illustrating
# working of nanargmin()
 
import numpy as geek
 
# Working on 2D array
array = ( [[ 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 IDE’s. So please, run them on your systems to explore the working.
. 
This article is contributed by Mohit Gupta_OMG 😀. If you likeneveropen and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to [email protected]. See your article appearing on theneveropen 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.

Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

5 COMMENTS

Most Popular

Dominic
32548 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6924 POSTS0 COMMENTS
Nicole Veronica
12039 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12150 POSTS0 COMMENTS
Shaida Kate Naidoo
7060 POSTS0 COMMENTS
Ted Musemwa
7302 POSTS0 COMMENTS
Thapelo Manthata
7018 POSTS0 COMMENTS
Umr Jansen
7006 POSTS0 COMMENTS