方法
对于二阶矩阵,使用.T
可以转置;而对于更高阶矩阵,可以使用swapaxes()
可以任意转置某两个维度
案例
首先构建一个高阶矩阵:
import numpy as np
Vars = np.array([[1, 2, 3, 4, 5, 6],
[5, 6, 7, 8, 9, 10],
[4, 5, 6, 7, 8, 9]])
x1 = Vars[:, 0]
x2 = Vars[:, 1]
x3 = Vars[:, 2]
x4 = Vars[:, 3]
x5 = Vars[:, 4]
x6 = Vars[:, 5]
x_matrix = np.array([[x1, x2],
[x3, x4],
[x5, x6]])
print(x_matrix.shape)
打印维度:(3, 2, 3)
对第1与第2个维度转置:
x_matrix_2 = x_matrix.swapaxes(0, 1)
效果等价于:
x_matrix_3 = np.array([[x1, x3, x5],
[x2, x4, x6]])