numpy.std()
Функция np.std вычисляет стандартное отклонение элементов массива — корень из дисперсии. Это мера разброса значений вокруг среднего. По умолчанию используется смещённая оценка (ddof=0), для несмещённой выборочной задайте ddof=1.
Сигнатура
numpy.std(a, axis=None, dtype=None, out=None, ddof=0, keepdims=False)
Параметры
a— входной массив.axis— ось вычисления (None— по всем элементам).ddof— поправка степеней свободы (0 — для генеральной совокупности, 1 — для выборки).keepdims— сохранять ли размерности.
Возвращаемое значение
Скаляр или массив со стандартными отклонениями.
Примеры
Пример 1. Стандартное отклонение по всем элементам.
import numpy as np
a = np.array([2, 4, 4, 4, 5, 5, 7, 9])
print(np.std(a))
2.0
Пример 2. Шум показаний АЦП.
adc = np.array([512, 510, 514, 511, 513, 512, 509])
print(round(np.std(adc), 4))
1.5584
Пример 3. Std по столбцам матрицы.
m = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
print(np.std(m, axis=0))
[2.44948975 2.44948975 2.44948975]
Пример 4. Выборочное std (ddof=1).
sample = np.array([10, 12, 11, 13, 14])
print("Генеральная:", round(np.std(sample), 4))
print("Выборочная:", round(np.std(sample, ddof=1), 4))
Генеральная: 1.4142
Выборочная: 1.5811
Пример 5. Контроль качества: датчик стабилен, если std < порога.
readings = np.array([100, 101, 99, 100, 100, 102, 98])
if np.std(readings) < 2.0:
print("Датчик стабилен")
else:
print("Шумит")
Датчик стабилен
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.