Open In App

sciPy stats.nanmedian() function | Python

Last Updated : 11 Feb, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

scipy.stats.nanmedian(array, axis=0) function calculates the median by ignoring the Nan (not a number) values of the array elements along the specified axis of the array.

Parameters :
array : Input array or object having the elements, including Nan values, to calculate the median.
axis : Axis along which the median is to be computed. By default axis = 0

Returns : median of the array elements (ignoring the Nan values) based on the set parameters.

Code #1:




# median 
import scipy
import numpy as np
  
arr1 = [1, 3, np.nan, 27, 2, 5
   
print("median using nanmedian :", scipy.nanmedian(arr1))
  
print("median without handling nan value :", scipy.median(arr1)) 


Output:

median using nanmedian : 3.0
median without handling nan value : nan

 
Code #2: With multi-dimensional data




# median 
from scipy import median
from scipy import nanmedian
import numpy as np
  
arr1 = [[1, 3, 27], 
        [3, np.nan, 6], 
        [np.nan, 6, 3], 
        [3, 6, np.nan]] 
   
print("median is :", median(arr1)) 
print("median handling nan :", nanmedian(arr1)) 
  
# using axis = 0
print("\nmedian is with default axis = 0 : \n"
      median(arr1, axis = 0))
print("\nmedian handling nan with default axis = 0 : \n"
      nanmedian(arr1, axis = 0))
  
# using axis = 1
print("\nmedian is with default axis = 1 : \n"
      median(arr1, axis = 1))  
print("\nmedian handling nan with default axis = 1 : \n"
      nanmedian(arr1, axis = 1))  


Output:

median is : nan
median handling nan : 3.0

median is with default axis = 0 : 
 [ nan  nan  nan]

median handling nan with default axis = 0 : 
 [ 3.  6.  6.]

median is with default axis = 1 : 
 [  3.  nan  nan  nan]

median handling nan with default axis = 1 : 
 [ 3.   4.5  4.5  4.5]


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads