median_absolute_deviation#

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

计算中值绝对偏差(MAD)。

疯子的定义是 median(abs(a - median(a))) .

参数:
data : array_likeNumpy:ARRAY_LIKE

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

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

计算MADs的一个或多个轴。违约 (None )计算平坦数组的MAD。

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 : floatndarrayPython :浮点或ndarray

输入数组的绝对偏差中值。如果 axisNone 然后返回一个标量,否则 ndarray 将被退回。

参见

mad_std

实例

从高斯分布生成随机变量,并返回该分布的中值绝对偏差::

>>> import numpy as np
>>> from astropy.stats import median_absolute_deviation
>>> rand = np.random.default_rng(12345)
>>> from numpy.random import randn
>>> mad = median_absolute_deviation(rand.standard_normal(1000))
>>> print(mad)    
0.6829504282771885