我有一组风速。它有100个值。
wind=[2.3,3.4,4.5...]
等等。我取每批10个(前10个,后10个,等等(,并使用取最大值
wmax = np.maximum.reduceat(wind, np.r_[:wind.size:10])
我还创建了一个零的空数组wind2
,其大小与wind
数组(100个索引(相同。
用wmax
中获得的值填充wind2
,但要确保wmax
的值填充与wind
中提取值相同的精确索引位置,最好的方法是什么?
我们可以使用np.repeat
,其重复长度与每个组的窗口大小相同。我们将采用一种更简单的方法,用相同的窗口大小重复所有窗口,最后切片使其与输入具有相同的长度。最后,要获得屏蔽输出,请使用np.where
-
np.where(np.repeat(wmax, W)[:wind.size]==wind,wind,0)