Python 在numpy中重塑时,如何保持特定尺寸不变?
我有一个巨大的(N*20)矩阵,其中每5行是一个有效样本,即每(5*20)个矩阵。我试着把它重塑成一个(N/5,1,20,5)矩阵,其中20维保持不变。我可以使用keep_dim在tensroflow中实现,但如何在numpy中实现这一点Python 在numpy中重塑时,如何保持特定尺寸不变?,python,numpy,matrix,Python,Numpy,Matrix,我有一个巨大的(N*20)矩阵,其中每5行是一个有效样本,即每(5*20)个矩阵。我试着把它重塑成一个(N/5,1,20,5)矩阵,其中20维保持不变。我可以使用keep_dim在tensroflow中实现,但如何在numpy中实现这一点 提前感谢。重塑形状,然后围绕以下轴交换轴: arr1 = arr.reshape(N/5,5,1,20) arr2 = arr1.transpose(0,2,3,1) 比如说 In [476]: arr = np.arange(24).reshape(6
提前感谢。重塑形状,然后围绕以下轴交换轴:
arr1 = arr.reshape(N/5,5,1,20)
arr2 = arr1.transpose(0,2,3,1)
比如说
In [476]: arr = np.arange(24).reshape(6,4)
In [477]: arr
Out[477]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15],
[16, 17, 18, 19],
[20, 21, 22, 23]])
In [478]: arr1 = arr.reshape(2,3,1,4)
In [479]: arr2 = arr1.transpose(0,2,3,1)
In [480]: arr2.shape
Out[480]: (2, 1, 4, 3)
In [482]: arr2
Out[482]:
array([[[[ 0, 4, 8],
[ 1, 5, 9],
[ 2, 6, 10],
[ 3, 7, 11]]],
[[[12, 16, 20],
[13, 17, 21],
[14, 18, 22],
[15, 19, 23]]]])
发布您的数组和输出