Функция nanmedian
Функция nanmedian вычисляет медиану элементов массива, игнорируя значения NaN. Первым параметром функция принимает массив (array). Вторым параметром можно указать ось (axis), вдоль которой выполняется вычисление. Третьим параметром можно указать, следует ли сохранять размерность (keepdims). Функция возвращает медиану всех конечных чисел. Если все элементы равны NaN, возвращается NaN.
Синтаксис
np.nanmedian(arr, [axis], [keepdims])
Пример
Вычислим медиану элементов массива с NaN:
import numpy as np
arr = np.array([1, 2, np.nan, 4, 5])
res = np.nanmedian(arr)
print(res)
Результат выполнения кода:
3.0
Пример
Сравнение nanmedian с обычной медианой:
import numpy as np
arr = np.array([1, 2, np.nan, 4, 5])
res_nanmedian = np.nanmedian(arr)
res_median = np.median(arr)
print("nanmedian:", res_nanmedian)
print("median:", res_median)
Результат выполнения кода:
nanmedian: 3.0
median: nan
Пример
Вычисление медианы двумерного массива вдоль строк:
import numpy as np
arr = np.array([[1, np.nan, 3], [4, 5, np.nan], [np.nan, 7, 8]])
res = np.nanmedian(arr, axis=1)
print(res)
Результат выполнения кода:
[2. 5. 8.]
Пример
Вычисление медианы с сохранением размерности:
import numpy as np
arr = np.array([[1, np.nan, 3], [4, 5, np.nan]])
res = np.nanmedian(arr, axis=0, keepdims=True)
print(res)
Результат выполнения кода:
[[2.5 5. 3. ]]
Смотрите также
-
функцию
nanmean,
которая вычисляет среднее, игнорируя NaN -
функцию
nanpercentile,
которая вычисляет процентили, игнорируя NaN -
функцию
nanmin,
которая находит минимум, игнорируя NaN -
функцию
isnan,
которая проверяет элементы на NaN