Spec-Zone.ru › NumPy 1.20

numpy.nanstd

numpy.nanstd(a, axis=None, dtype=None, out=None, ddof=0, keepdims=<no value>) [source]

Вычислить стандартное отклонение по указанной оси, игнорируя значения NaN.

Возвращает стандартное отклонение, мера разброса распределения, элементов массива без NaN. Стандартное отклонение вычисляется для сплющенного массива по умолчанию, в противном случае по указанной оси.

Для всех срезов NaN или срезов с нулевой степенью свободы возвращается NaN и возникает RuntimeWarning.

Новое в версии 1.8.0.

Параметры
aarray_like

Вычислить стандартное отклонение значений без NaN.

axis{int, tuple of int, None}, optional

Ось или оси, по которым вычисляется стандартное отклонение. По умолчанию вычисляется стандартное отклонение сплющенного массива.

dtypedtype, optional

Тип, используемый при вычислении стандартного отклонения. Для массивов целочисленного типа значение по умолчанию равно float64, для массивов плавающей точки оно совпадает с типом массива.

outndarray, optional

Альтернативный массив вывода, в который следует поместить результат. Он должен иметь такую же форму, как ожидаемый результат, но тип (вычисленных значений) будет преобразован при необходимости.

ddofint, optional

Означает число степеней свободы. Делитель, используемый в вычислениях, равен N - ddof, где N представляет количество элементов без NaN. По умолчанию ddof равно нулю.

keepdimsbool, optional

Если это значение установлено в True, оси, по которым выполнено сокращение, остаются в результате как измерения с размером один. С этим параметром результат будет правильно транслироваться относительно исходного a.

Если это значение отличается от значения по умолчанию, оно передается как есть соответствующим функциям подклассов. Если у этих функций нет параметра keepdims, будет поднята ошибка RuntimeError.

Возвращает
standard_deviationndarray, see dtype parameter above.

Если out равно None, возвращается новый массив, содержащий стандартное отклонение, в противном случае возвращается ссылка на выходной массив. Если ddof больше или равен количеству элементов без NaN в срезе, или срез содержит только NaN, то результат для этого среза равен NaN.

См. также

var, mean, std
nanvar, nanmean
Определение типа выходных данных

Примечания

Стандартное отклонение является квадратным корнем из среднего значения квадратов отклонений от среднего: std = sqrt(mean(abs(x - x.mean())**2)).

Среднее значение квадрата отклонения обычно вычисляется как x.sum() / N, где N = len(x). Однако, если указано ddof, вместо этого используется делитель N - ddof. В стандартной статистической практике ddof=1 обеспечивает несмещенную оценку дисперсии бесконечной генеральной совокупности. ddof=0 обеспечивает оценку максимального правдоподобия дисперсии для нормально распределенных переменных. Стандартное отклонение, вычисленное в этой функции, является квадратным корнем из оценочной дисперсии, поэтому даже при ddof=1, это не будет несмещенной оценкой стандартного отклонения как такового.

Обратите внимание, что для комплексных чисел std принимает абсолютное значение перед возведением в квадрат, так что результат всегда является действительным и неотрицательным.

Для чисел с плавающей запятой std вычисляется с той же точностью, что и у входных данных. В зависимости от входных данных это может привести к неточным результатам, особенно для float32 (см. пример ниже). Использование накопителя с большей точностью с помощью ключевого слова dtype может смягчить эту проблему.

Примеры

>>> a = np.array([[1, np.nan], [3, 4]])
>>> np.nanstd(a)
1.247219128924647
>>> np.nanstd(a, axis=0)
array([1., 0.])
>>> np.nanstd(a, axis=1)
array([0.,  0.5]) # may vary

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.nanstd.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API