Open In App

numpy.nanargmax() in Python

Last Updated : 19 Sep, 2023
Comments
Improve
Suggest changes
Like Article
Like
Report

The numpy.nanargmax() function returns indices of the max 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.nanargmax(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 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))

Output : 

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]

Code 2: Comparing working of argmax and nanargmax 

Python
# Python Program illustrating
# 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))

Output : 

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]

Note : 
These codes won't run on online IDE's. So please, run them on your systems to explore the working.

 


Similar Reads

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy