scipy.stats.nanmedian(array, axis=0) Die Funktion berechnet den Median, indem die Nanowerte (keine Zahl) der Array-Elemente entlang der angegebenen Achse des Arrays ignoriert werden.

Parameter:
Array: Geben Sie ein Array oder Objekt mit den Elementen ein, einschließlich der Nan-Werte, um den Median zu berechnen.
Achse: Achse, entlang der der Median berechnet werden soll. Standardmäßig ist Achse = 0

Rückgabe: Median der Array-Elemente (ohne Berücksichtigung der Nan-Werte) basierend auf den eingestellten Parametern.

Code # 1:

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))  

Ausgabe:



Median mit Nanmedian: 3.0
Median ohne Umgang mit Nanowert: Nan

 
Code 2: Mit mehrdimensionalen Daten

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))  
  
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)) 
  
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))   

Ausgabe:

Median ist: nan
Median Handling Nan: 3,0
Median ist mit Standardachse = 0:
 [nan nan nan]
Median Handling Nan mit Standardachse = 0:
 [3. 6. 6.]
Median ist mit Standardachse = 1:
 [3. nan nan nan]
Median Handling Nan mit Standardachse = 1:
 [3. 4.5 4.5 4.5]