如何从Matlab中的行主矢量中获取Matrix?

时间:2016-02-15 17:32:12

标签: matlab matrix row-major-order column-major-order

我有以下矩阵:

50,60,55,67,70
62,65,70,70,81
72,66,77,80,69

我现在把矩阵变成一个向量但是在行主要。这给出了以下向量:

50,60,55,67,70,62,65,70,70,81,72,66,77,80,69

现在我想将此向量转换为与上面相同的矩阵。问题是reshape(matrix,[3,5])不起作用,因为Matlab运行的是列专业。

如何有效地完成这项工作(对于大型矩阵)?

1 个答案:

答案 0 :(得分:4)

要解决此问题,请使用

reshape(matrix,[5,3]).'

首先使用交换行和列维度的重塑,获得一个正确顺序但转置的矩阵,然后使用转置获得正确的输出。

拥有控制系统工具箱,您还可以使用vec2mat