How can I convert 2-D array to 1-D array.

I am using a variable oprtn_pts. whose size is 3 2.
I want to convert this into 6*1. How can I do this?

 Accepted Answer

one way
out = oprtn_pts(:);
or
out = oprtn_pts.';
out = out(:);
other:
out = reshape(oprtn_pts,[],1);
or
out = reshape(oprtn_pts.',[],1);

More Answers (1)

Wayne King
Wayne King on 18 Sep 2012
Edited: Wayne King on 18 Sep 2012
oprtn_pts = randn(3,2);
oprtn_pts = reshape(a,6,1);
It takes the elements from oprtn_pts columnwise.

3 Comments

Wayne, I want to generalize this case. Now, let's assume that I don't know what is size of oprtn_pts. I am getting this size by using command s = size(oprtn_pts); Now say that s = m n (We don't know what is there inside). How can I convert this into 1-D array? Please suggest something on this.
Hi Bhavnish! Please see my answer.
Hi Andrei, Thanks a lot for the help. I din't refresh my page earlier, so wasn't able to see your response. Yeah, your response is working absolutely fine for me... :-)

Sign in to comment.

Categories

Community Treasure Hunt

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

Start Hunting!