Spec-Zone.ru › NumPy 1.13

numpy.nanstd

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

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

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

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

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

Параметры:

a : array_like

Вычисляется стандартное отклонение ненулевых значений.

axis : int, необязательно

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

dtype : dtype, необязательно

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

out : ndarray, необязательно

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

ddof : int, необязательно

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

keepdims : bool, необязательно

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

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

Возвращает:

standard_deviation : ndarray, см. параметр dtype выше.

Если 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])

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.nanstd.html

Spec-Zone.ru

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