Numpy 将多个三维阵列转换为一个二维阵列
我在不同的文件中有许多3D阵列。我想将它们转换为二维数组,然后将它们合并为一个数组。 我设法得到了2D数组,但没有得到格式。 前任: 原始三维阵列(4x2x2x2): 我希望它成为2D(2x8): 这是我的代码:Numpy 将多个三维阵列转换为一个二维阵列,numpy,multidimensional-array,Numpy,Multidimensional Array,我在不同的文件中有许多3D阵列。我想将它们转换为二维数组,然后将它们合并为一个数组。 我设法得到了2D数组,但没有得到格式。 前任: 原始三维阵列(4x2x2x2): 我希望它成为2D(2x8): 这是我的代码: import numpy as np x=np.arange(16).reshape((4,2,2)) #Depth, Row, Column y=x.reshape((x.shape[1], -1), order='F') 如果有更好的方法,请随时改进我的代
import numpy as np
x=np.arange(16).reshape((4,2,2)) #Depth, Row, Column
y=x.reshape((x.shape[1], -1), order='F')
如果有更好的方法,请随时改进我的代码。您可以使用交换前两个轴,然后重新塑造形状,如下所示-
y = x.swapaxes(0,1).reshape(x.shape[1],-1)
非常感谢。太棒了。:)
import numpy as np
x=np.arange(16).reshape((4,2,2)) #Depth, Row, Column
y=x.reshape((x.shape[1], -1), order='F')
y = x.swapaxes(0,1).reshape(x.shape[1],-1)