例如,如果:

a = numpy.array([[[[1,2],[3,4]],[[5,6],[7,8]]],[[[11,12],[13,14]],[[15,16],[17,18]]]])

我想最终得到:
1  2  5  6
3  4  7  8
11 12 15 16
13 14 17 18

不幸的是,简单的整形是行不通的。

最佳答案

您需要先交换第二和第三个轴,然后重新调整形状:

>>> a.swapaxes(1, 2).reshape(4, 4)
array([[ 1,  2,  5,  6],
       [ 3,  4,  7,  8],
       [11, 12, 15, 16],
       [13, 14, 17, 18]])

关于python - Python/Numpy:将N4xN3xN2xN1 4D数组重新排列为(N4.N2)x(N3.N1)2D数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33957675/

10-12 17:03