使用特定模式将4D numpy重塑为5D阵列

时间:2016-08-07 10:43:54

标签: python numpy reshape

我有一个形状(N x 8 x 24 x 98)的4D numpy数组,我需要将其重塑为5D形状(N x 8 x 24 x 7 x 14),以便将最后一个维度拆分为2个单独的维度。

如果v_i是旧矩阵(包含98个元素)的最后一个维度中元素i的值,则应在2个新的shape维度中按以下顺序排序值{ {1}}:

7 x 14

性能并不重要,因此如果需要,解决方案可能会使用for循环。

1 个答案:

答案 0 :(得分:2)

IIUC你可以简单地重塑阵列/矩阵:

In [109]: a = np.arange(8*24*98).reshape(8,24,98)

In [110]: a.shape
Out[110]: (8, 24, 98)

In [111]: x = a.reshape(8,24,7,14)

In [112]: x.shape
Out[112]: (8, 24, 7, 14)