gpt4 book ai didi

python - 在屏蔽数组上使用 numpy.median

转载 作者:太空狗 更新时间:2023-10-29 20:52:28 25 4
gpt4 key购买 nike

在屏蔽数组的情况下,我对 numpy.median 的输出有点困惑。这是一个简单的示例(假设导入了 numpy - 我的版本是 1.6.2):

>>> a = [3.0, 4.0, 5.0, 6.0, numpy.nan]
>>> am = numpy.ma.masked_array(a, [numpy.isnan(x) for x in a])

我希望能够在计算中位数时使用掩码数组忽略数组中的 nan 值。这适用于使用 numpy.mean 或掩码数组的 mean() 方法的均值:

>>> numpy.mean(a)
nan
>>> numpy.mean(am)
4.5
>>> am.mean()
4.5

但是对于中位数我得到:

>>> numpy.median(am)
5.0

但我希望得到更像这样的结果:

>>> numpy.median([x for x in a if not numpy.isnan(x)])
4.5

不幸的是,masked_array 没有median 方法。

最佳答案

MaskedArray 上使用 np.ma.median

[解释:如果我没记错的话,np.median 不支持子类,因此它无法在 np.ma.MaskedArray 上正常工作。 ]

关于python - 在屏蔽数组上使用 numpy.median,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12372594/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com