transpose()函数的实质作用是改变序列。
二维:
x = ([[0, 1],
[2, 3]])
#二维不填参数,默认转置
y1 = x.transpose()
y1 = ([[0, 2],
[1, 3]])
#二维填参数,按默认顺序填,表示不变换序列
y2 = x.transpose(0,1)
y2 = ([[0, 1],
[2, 3]])
#二维填参数,改变顺序填,表示变换序列
y3 = x.transpose(1,0)
y3 = ([[0, 2],
[1, 3]])
#所有序列都是可以写出来的,从上到下依次写出,从左至右依次为序列维度标号。
所谓交换序列标号可理解为,序列维度标号改变,相对位置不变,每个按标号索引找到其对应值,然后赋给同位置的原变量。
1序列与0序列交换,如下:
原:
0 1
x[0][0] == 0
x[0][1] == 1
x[1][0] == 2
x[1][1] == 3
变换过程:
1 0
x[0][0] == 0
x[1][0] == 2
x[0][1] == 1
x[1][1] == 3
变换后:
0 1
y[0][0] == 0
y[0][1] == 2
y[1][0] == 1
y[1][1] == 3
三维、多维:
#类似二维,三维填参数,改变顺序,表示按照索引的改变来变换序列
#同理可推至多维