How can I create a loop for transpose row vector to column vector

1 view (last 30 days)
Hi guys!
I have a data 4624X12 and i need transpose every line to columns, to getting a 55488X1 matrix.
I tried the following loop:
j=1; [row,col]=size(data); for i=1:row M(j)=data(i,:)'; j=j+1 end
This error appier in this situation: "??? In an assignment A(I) = B, the number of elements in B and I must be the same"
Tks every budy!

Accepted Answer

Roger Stafford
Roger Stafford on 14 May 2013
Your words "transpose every line to columns" hint that you wish the rows to remain contiguous within the single column. If so, do this:
M = data.';
M = M(:);
  1 Comment
Gustavo Oliveira
Gustavo Oliveira on 14 May 2013
Tks Roger! This really works, I am new in this thing and I'm always complicating everythink.

Sign in to comment.

More Answers (2)

Shashank Prasanna
Shashank Prasanna on 14 May 2013

Jan
Jan on 14 May 2013
The error message explains exhaustively, why M(j)=data(i,:)' must fail: There is a vector on the left side, but a scalar on the right side. Obviously you cannot assign the values of a vector to one scalar.
Roger's answer solves the problem efficiently.

Community Treasure Hunt

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

Start Hunting!