Transpose

矩阵转置。 反转或排列矩阵的轴;返回修改后的矩阵。

matrix matrix::Transpose()

返回值

转置后的矩阵。

以 MQL5 实现的简单矩阵转置算法:

matrix MatrixTranspose(const matrix& matrix_a)

  {

   matrix matrix_c(matrix_a.Cols(),matrix_a.Rows());



   for(ulong i=0; i<matrix_c.Rows(); i++)

      for(ulong j=0; j<matrix_c.Cols(); j++)

         matrix_c[i][j]=matrix_a[j][i];



   return(matrix_c);

  }

MQL5 示例:

  matrix a= {{0, 1, 2}, {3, 4, 5}};

  Print("matrix a \n", a);

  Print("a.Transpose() \n", a.Transpose());



  /*

  matrix a

  [[0,1,2]

   [3,4,5]]

  a.Transpose()

  [[0,3]

   [1,4]

   [2,5]]

  */

Python 示例:

import numpy as np



a = np.arange(6).reshape((2,3))

print("a \n",a)

print("np.transpose(a) \n",np.transpose(a))



a

 [[0 1 2]

 [3 4 5]]

np.transpose(a)

 [[0 3]

 [1 4]

 [2 5]]