Spec-Zone.ru › NumPy 1.16

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.

Параметры:
a : array_like

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

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

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

dtype : dtype, optional

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

out : ndarray, optional

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

ddof : int, optional

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

keepdims : bool, optional

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

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

Возвращает:
standard_deviation : ndarray, see dtype parameter above.

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

См. также

var, mean, std, nanvar, nanmean

numpy.doc.ufuncs
Раздел «Аргументы вывода»

Примечания

Стандартное отклонение — это квадратный корень из среднего значения квадратов отклонений от среднего значения: 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])

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

Spec-Zone.ru

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