使用给定的步幅/步长从numpy数组中获取子数组

7 浏览
0 Comments

使用给定的步幅/步长从numpy数组中获取子数组

假设我有一个Python的Numpy数组a

a = numpy.array([1,2,3,4,5,6,7,8,9,10,11])

我想从这个长度为5的数组中创建一个子序列的矩阵,步长为3。因此,结果矩阵如下所示:

numpy.array([[1,2,3,4,5],[4,5,6,7,8],[7,8,9,10,11]])

一种可能的实现方式是使用for循环。

result_matrix = np.zeros((3, 5))
for i in range(0, len(a), 3):
  result_matrix[i] = a[i:i+5]

在Numpy中有没有更简洁的实现方式?

0