我有一个像这样的三维矩阵
np.arange(16).reshape((4,2,2))
array([[[ 0, 1],
[ 2, 3]],
[[ 4, 5],
[ 6, 7]],
[[ 8, 9],
[10, 11]],
[[12, 13],
[14, 15]]])
我想以网格格式堆叠它们,最终得到
array([[ 0, 1, 4, 5],
[ 2, 3, 6, 7],
[ 8, 9, 12, 13],
[10, 11, 14, 15]])
有没有一种方法可以在不显式使用hstack
(和/或vstack
)或添加额外的维度和重塑的情况下完成?
bm x bn
,我想将它们堆叠成一个m x n
的矩阵,条件是N = m x n
,那么我可以使用下面的代码实现:x.reshape(m,n,bm,bn).swapaxes(1,2).reshape(bm*m,-1)
我只想知道是否有任何NumPy函数可实现此目的。再次感谢@unutbu。 - poeticcapybaranumpy
的官方文档中对reshape
进行扩展(只是几个词),按照以下方式阅读也是有意义的:ndarray.reshape(第四维, 第三维, 第二维, 第一维)
,最高的维度总是排在最前面。 - undefined