初学python,在看别人写的代码的时候遇到复数表示的维度序号,就让我感到有点疑惑,用代码尝试了几次,还是没有发现其中的规则。例如有四维的tenson,形状是[3, 4,2, 1], transpose(-1, 1)表示哪两个维度进行转换
python语法中,集合序号如果出现负数,表示从后往前数
比如
a=[1,2,3,4,5]
那么
a[-1]=5
a[-2]=4
知道了基本规则剩下的都简单了吧
矩阵或多维数组,可以这样理解[3, 4,2, 1],最后两个维度是行和列,reshape()对数组进行维度调整,transpose()转置。当使用reshape(-1,1)表示将原数组的调整成一列,行数自动计算。
import numpy as np
a=np.arange(24).reshape((3,4,2,1))
print(a.shape)
#(3, 4, 2, 1)
a=a.reshape(-1,1)
print(a.shape)
#(24, 1)
如有帮助望采纳。