Splitting up a vector into a matrix

조회 수: 75 (최근 30일)
Bran
Bran 2014년 9월 17일
편집: José-Luis 2014년 9월 17일
Is there a sophisticated way of doing the following;
I have a vector = [ 1 ; 2 ; 3 ; 4 ; 6 ; 10 ; 3 ; 5 ; 3 ]
I would like to put this into another matrix so that; NEW MATRIX = [1 2 3; 4 6 10; 3 5 3];
Many thanks

채택된 답변

José-Luis
José-Luis 2014년 9월 17일
편집: José-Luis 2014년 9월 17일
data = rand(3);
result = reshape(data,3,3)';
  댓글 수: 3
José-Luis
José-Luis 2014년 9월 17일
Yes, please read the documentation on reshape().
Please accept the answer that best solves your problem.
Laura
Laura 2014년 9월 17일
편집: Laura 2014년 9월 17일
B = reshape(A,m,n) or B = reshape(A,[m n]) returns the m-by-n matrix B whose elements are taken column-wise from A. An error results if A does not have m*n elements.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Roger Stafford
Roger Stafford 2014년 9월 17일
new = reshape(v,sqrt(length(v)),[]).'; % <-- The transpose is needed

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by