numpy.nanmax()
function is used to returns maximum value of an array or along any specific mentioned axis of the array, ignoring any Nan value.
Syntax : numpy.nanmax(arr, axis=None, out=None, keepdims = no value)
Parameters :
arr : Input array.
axis : Axis along which we want the max value. Otherwise, it will consider arr to be flattened(works on all the axis)axis = 0 means along the column
and axis = 1 means working along the row.
out : Different array in which we want to place the result. The array must have same dimensions as expected output.
keepdims : If this is set to True, the axes which are reduced are left in the result as dimensions with size one. With this option, the result will broadcast correctly against the original a.Return :maximum array value(a scalar value if axis is none)or array with maximum value along specified axis.
Code #1 : Working
# Python Program illustrating # numpy.nanmax() method import numpy as np # 1D array arr = [ 1 , 2 , 7 , 0 , np.nan] print ( "arr : " , arr) print ( "max of arr : " , np.amax(arr)) # nanmax ignores NaN values. print ( "nanmax of arr : " , np.nanmax(arr)) |
Output :
arr : [1, 2, 7, 0, nan] max of arr : nan nanmax of arr : 7.0
Code #2 :
import numpy as np # 2D array arr = [[np.nan, 17 , 12 , 33 , 44 ], [ 15 , 6 , 27 , 8 , 19 ]] print ( "\narr : \n" , arr) # maximum of the flattened array print ( "\nmax of arr, axis = None : " , np.nanmax(arr)) # maximum along the first axis # axis 0 means vertical print ( "max of arr, axis = 0 : " , np.nanmax(arr, axis = 0 )) # maximum along the second axis # axis 1 means horizontal print ( "max of arr, axis = 1 : " , np.nanmax(arr, axis = 1 )) |
Output :
arr : [[nan, 17, 12, 33, 44], [15, 6, 27, 8, 19]] max of arr, axis = None : 44.0 max of arr, axis = 0 : [15. 17. 27. 33. 44.] max of arr, axis = 1 : [44. 27.]
Code #3 :
import numpy as np arr1 = np.arange( 5 ) print ( "Initial arr1 : " , arr1) # using out parameter np.nanmax(arr, axis = 0 , out = arr1) print ( "Changed arr1(having results) : " , arr1) |
Output :
Initial arr1 : [0 1 2 3 4] Changed arr1(having results) : [15 17 27 33 44]