mad_std#

astropy.stats.mad_std(data, axis=None, func=None, ignore_nan=False)[源代码]#

使用 median absolute deviation (MAD) .

标准差估计值由下式给出:

\[\西格玛\approach\frac{\textrm{MAD}}{\Phi^{-1}(3/4)}\]

在哪里? \(\Phi^{{-1}}(P)\) 正态逆累积分布函数是否按概率计算 \(P = 3/4\) .

参数:
data : array_likeNumpy:ARRAY_LIKE

可以转换为数组的数据数组或对象。

axis : Noneint ,或 tupleint ,可选PYTHON:NONE、PYTHON:INT或PYTHON:TUTPLE OF PYTHON:INT,可选

计算稳健标准偏差的一个或多个轴。违约 (None )计算平坦阵列的鲁棒标准差。

func : callable() ,可选Python:Callable(),可选

用来计算中值的函数。默认为 numpy.ma.median 对于掩码数组,否则为 numpy.median .

ignore_nan : bool布尔

计算中值时忽略NaN值(将它们视为不在数组中)。这将使用 numpy.ma.median 如果 axis 已指定,或 numpy.nanmedian 如果 axis=None numpy的版本是>1.10,因为在这个例子中,nanmedian的速度稍快一些。

返回:
mad_std : floatndarrayPython :浮点或ndarray

输入数据的稳健标准差。如果 axisNone 然后返回一个标量,否则 ndarray 将被退回。

实例

>>> import numpy as np
>>> from astropy.stats import mad_std
>>> rand = np.random.default_rng(12345)
>>> madstd = mad_std(rand.normal(5, 2, (100, 100)))
>>> print(madstd)    
1.984147963351707