numpy.var()
Функция np.var вычисляет дисперсию — средний квадрат отклонения от среднего. Это квадрат стандартного отклонения. По умолчанию даёт смещённую (генеральную) оценку (ddof=0); для выборочной дисперсии задайте ddof=1.
Сигнатура
numpy.var(a, axis=None, dtype=None, out=None, ddof=0, keepdims=False)
Параметры
a— входной массив.axis— ось вычисления.ddof— поправка степеней свободы.keepdims— сохранять ли размерности.
Возвращаемое значение
Скаляр или массив значений дисперсии.
Примеры
Пример 1. Дисперсия по всем элементам.
import numpy as np
a = np.array([2, 4, 4, 4, 5, 5, 7, 9])
print(np.var(a))
4.0
Пример 2. Дисперсия — это квадрат std.
a = np.array([10, 12, 11, 13, 14])
print(np.var(a))
print(np.std(a)**2)
2.0
2.0000000000000004
Пример 3. Выборочная дисперсия (ddof=1).
sample = np.array([10, 12, 11, 13, 14])
print("ddof=0:", np.var(sample))
print("ddof=1:", np.var(sample, ddof=1))
ddof=0: 2.0
ddof=1: 2.5
Пример 4. Дисперсия показаний АЦП по столбцам.
adc = np.array([[512, 480, 600],
[510, 482, 605],
[508, 478, 610],
[514, 481, 607]])
print(np.round(np.var(adc, axis=0), 4))
[5. 2.1875 13.5 ]
Пример 5. Контроль качества по дисперсии.
batch1 = np.array([100, 100, 101, 99, 100])
batch2 = np.array([90, 110, 100, 95, 105])
print("batch1 var:", np.var(batch1))
print("batch2 var:", np.var(batch2))
batch1 var: 0.4
batch2 var: 50.0
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.