РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
281 of 541 menu

Функция nanvar

Функция nanvar вычисляет дисперсию элементов массива по заданной оси, при этом значения NaN игнорируются. Это аналог функции var, но устойчивый к пропускам в данных. Первым параметром функция принимает массив, вторым параметром можно указать ось для вычислений, третьим - параметры ddof (смещение степени свободы) и keepdims.

Синтаксис

np.nanvar(arr, axis=None, dtype=None, out=None, ddof=0, keepdims=False)

Пример

Вычислим дисперсию одномерного массива с пропущенными значениями:

import numpy as np arr = np.array([1.0, 2.0, np.nan, 4.0, 5.0]) res = np.nanvar(arr) print(res)

Результат выполнения кода:

2.5

Пример

Сравним результат с обычной функцией var, которая возвращает NaN при наличии пропусков:

import numpy as np arr = np.array([1.0, 2.0, np.nan, 4.0, 5.0]) res_nanvar = np.nanvar(arr) res_var = np.var(arr) print("nanvar:", res_nanvar) print("var:", res_var)

Результат выполнения кода:

"nanvar: 2.5" "var: nan"

Пример

Вычислим дисперсию по строкам двумерного массива с пропусками:

import numpy as np arr = np.array([[1.0, 2.0, np.nan], [4.0, 5.0, 6.0], [np.nan, 8.0, 9.0]]) res = np.nanvar(arr, axis=1) print(res)

Результат выполнения кода:

[0.25 0.66666667 0.25]

Пример

Используем параметр ddof для вычисления несмещённой дисперсии (выборочной дисперсии):

import numpy as np arr = np.array([1.0, 2.0, np.nan, 4.0, 5.0]) res = np.nanvar(arr, ddof=1) print(res)

Результат выполнения кода:

3.3333333333333335

Смотрите также

  • функцию nanstd,
    которая вычисляет стандартное отклонение с игнорированием NaN
  • функцию nanmean,
    которая вычисляет среднее арифметическое с игнорированием NaN
  • функцию nansum,
    которая вычисляет сумму элементов с игнорированием NaN
  • функцию isnan,
    которая проверяет, является ли элемент NaN
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить