gpt4 book ai didi

python - Python 中的两行平均值,同时忽略 NaN

转载 作者:行者123 更新时间:2023-11-30 23:40:54 24 4
gpt4 key购买 nike

我有一个二维数据数组。我需要对每两行进行平均,并返回高度为数组一半的平均值。我还需要忽略所有 NaN 值以进行平均。例如:

>>> x = numpy.array([[ 1,  nan,  3,  4,  5],
... [ 6, 7, 8, 9, nan],
... [11, 12, 13, 14, nan],
... [16, nan, 18, 19, nan]])

该函数需要返回:

>>> x
array([[3.5, 7, 5.5, 6.5, 5],
[13.5, 12, 15.5, 16.5, nan]])

最佳答案

这应该可以解决问题:

numpy.ma.average(numpy.ma.masked_invalid(x).reshape(-1, 2, x.shape[-1]), 1)

对我来说它返回

masked_array(data =
[[3.5 7.0 5.5 6.5 5.0]
[13.5 12.0 15.5 16.5 --]],
mask =
[[False False False False False]
[False False False False True]],
fill_value = 1e+20)

关于python - Python 中的两行平均值,同时忽略 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12362703/

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