滑动窗口移动二维阵列

2024-10-04 09:23:22 发布

您现在位置:Python中文网/ 问答频道 /正文

在这里,我使用的是rolling_window2D,我面临的问题是移动多个索引:

 def rollingwindow2D(a,y):
     h= a[np.arange(a.shape[0]-y+2)[:,None] + np.arange(y-1)]
     return h

输出为:

[1 2 3]  [4 5 6]  [7 8 9]    [10 11 12] [13 14 15]

[4 5 6]   [7 8 9]   [10 11 12]   [13 14 15]   [16 17 18]

[7 8 9]   [10 11 12]   [13 14 15]   [16,17,18]   [19 20 21]

我想要的输出:

[1 2 3]   [4 5 6]   [7 8 9]   [10 11 12]   [13 14 15]

[10 11 12]   [13 14 15]   [16 17 18]   [19 20 21]   [22 23 24]

[19 20 21]   [22 23 24]   [25 26 27]   [28 29 30]   [31 32 33]

Tags: nonereturndefnpshaperollingarangerollingwindow2d