最近在学深度学习时,碰到许多关于Numpy的知识点,边学边做点笔记,方便记忆。
此篇文章用来学习Numpy Transpose函数。
————————————————————————————————
array = np.arange(0, 24).reshape(2, 4, 3)
print(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]]]
array.shape = (2,4,3)
第一个参数表示此三维矩阵中存在2个二维矩阵;第二个、第三个参数表示其中二维矩阵为4行3列矩阵,故shape为(2,4,3),且三个参数顺序分别对应索引号(0,1,2),2的索引号对应0,4的索引号对应1,3的索引号对应2。
————————————————————————————————
进行transpose变形
b = array.transpose(1, 0, 2)
transpose中参数(1,0,2)表示对第一个索引号与第二个索引号对应数字进行交换,结合上述array的实际情况,array.shape变为(4,2,3),此shape参数表示新的三维矩阵b中存在4个二维矩阵;第二个、第三个参数表示其中二维矩阵为2行3列矩阵,得到以下矩阵。
[[[ 0 1 2]
[12 13 14]]
[[ 3 4 5]
[15 16 17]]
[[ 6 7 8]
[18 19 20]]
[[ 9 10 11]
[21 22 23]]]