conversion of matrix into vector

1 view (last 30 days)
krak
krak on 26 Apr 2013
I made an algorithm of conversion of a matrix for a vector of column but it just works for the matrix 3*4. I want that it work on is important dimension(size). All the dimensions(size)! How I make? the code :
x=[1 2 3 0;4 5 6 0;7 8 9 0];
y=x(:,1);
m=2;
while m<5
y=[y;x(:,m)];
m=m+1;
end

Accepted Answer

Wayne King
Wayne King on 26 Apr 2013
Edited: Wayne King on 26 Apr 2013
Is this important that you write yourself? Because there is a reshape() function
x = randn(10,10);
y = reshape(x,100,1);
If it is important, then just starting from what you have, how about
x = randn(10,10);
y=x(:,1);
m=2;
while m<= size(x,2)
y=[y;x(:,m)];
m=m+1;
end
  1 Comment
krak
krak on 26 Apr 2013
Edited: krak on 26 Apr 2013
Thank you for your answer! I have an image (any image) and I want to convert her in a vector of columns! It is the only algorithm which I found! I would like of your help :)

Sign in to comment.

More Answers (2)

sammar
sammar on 26 Apr 2013
hey krak try this way if that what you want
x=[1 2 3 0;4 5 6 0;7 8 9 0]; >> B = reshape(x.',1,[]);
  1 Comment
krak
krak on 26 Apr 2013
hey sammar , Yes the function reshape, but how I have to use him under matlab? Thank you for your answer:)

Sign in to comment.


Jim
Jim on 26 Apr 2013
Just x(:)

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!