numpy.ma.中位数#
- 嘛。Median ( a , axis = None , out = None , overwrite_input = False , keepdims = False ) [来源] #
计算沿指定轴的中位数。
返回数组元素的中位数。
- 参数:
- 类似数组
输入数组或可转换为数组的对象。
- 轴int,可选
计算中位数的轴。默认值(无)是沿着数组的扁平版本计算中位数。
- 输出ndarray,可选
用于放置结果的替代输出数组。它必须具有与预期输出相同的形状和缓冲区长度,但如果需要,类型将被转换。
- overwrite_input布尔值,可选
如果为 True,则允许使用输入数组 (a) 的内存进行计算。输入数组将通过调用中位数来修改。当您不需要保留输入数组的内容时,这将节省内存。将输入视为未定义,但它可能会完全或部分排序。默认值为 False。请注意,如果overwrite_input为 True,并且输入还不是
ndarray
,则会引发错误。- keepdims布尔值,可选
如果将此设置为 True,则缩小的轴将作为大小为 1 的维度保留在结果中。使用此选项,结果将针对输入数组正确广播。
1.10.0 版本中的新增内容。
- 返回:
也可以看看
笔记
给定一个
V
具有N
非掩码值的向量, 的中位数是( )V
的排序副本的中间值- 即,当为奇数时,或 当为偶数时。V
Vs
Vs[(N-1)/2]
N
{Vs[N/2 - 1] + Vs[N/2]}/2
N
例子
>>> x = np.ma.array(np.arange(8), mask=[0]*4 + [1]*4) >>> np.ma.median(x) 1.5
>>> x = np.ma.array(np.arange(10).reshape(2, 5), mask=[0]*6 + [1]*4) >>> np.ma.median(x) 2.5 >>> np.ma.median(x, axis=-1, overwrite_input=True) masked_array(data=[2.0, 5.0], mask=[False, False], fill_value=1e+20)