如何计算一个numpy数组中一定范围内的数字的平均值?

时间:2019-03-27 20:56:19

标签: python-3.x

我有两个数字数组。我想将它们组合成一个数组,并对一个范围内彼此接近的数字求平均。

以前,彼此接近的数字是四个一组,如下所示。我已经添加了两个数组,并对数字进行了排序。然后,我取了累加和,并使用了以下代码。效果很好。

y1=np.array([1697.3, 5830.3 , 4005.9, 5804.5, 1686.2, 4002.4])
y2=np.array([1695.3, 5817.7, 4009.5 , 5817.9, 1690.4, 3993.9])
all_ys=np.append(y1,y2)
all_ys.sort()
AvgDist = np.cumsum(all_ys, 0)[3::4]/float(4)
AvgDist[1:] = AvgDist[1:] - AvgDist[:-1]

AvgDist
Out[3]: array([1692.3  , 4002.8  , 5817.525])

但是,我刚刚意识到并不是所有的时间都是四位一组。例如,我有以下两个数组

y1=np.array([2823.8, 2818.9, 5231.5])
y2=np.array([2820.7, 2808.7, 5356.3])

我想要以下结果:

AvgDist
array([2818.025, 5293.9])

0 个答案:

没有答案