标签: matlab
这就是我所拥有的:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
这就是我想要的:
[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ]
行数和列数(示例中为3和4)已为人所知。
我该怎么做?
答案 0 :(得分:5)
reshape
b = reshape(a, 4, 3)'将适用于您的示例。元素取自原始元素并逐列插入新矩阵。
b = reshape(a, 4, 3)'
此外,reshape是一个内置的MATLAB函数。存在需要通信工具箱的其他解决方案,例如vec2mat。
vec2mat
答案 1 :(得分:2)
这guide说
mat = vec2mat(vec,matcol)将矢量vec转换为带有matcol列的矩阵,一次创建一行。如果vec的长度不是matcol的倍数,则在最后一排垫子中放置额外的零。矩阵垫有ceil(长度(vec)/ matcol)行。