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?

 Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 18 Sep. 2012

0 Stimmen

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

Weitere Antworten (1)

Wayne King
Wayne King am 18 Sep. 2012
Bearbeitet: Wayne King am 18 Sep. 2012

0 Stimmen

oprtn_pts = randn(3,2);
oprtn_pts = reshape(a,6,1);
It takes the elements from oprtn_pts columnwise.

3 Kommentare

Bhavnish
Bhavnish am 18 Sep. 2012
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.
Andrei Bobrov
Andrei Bobrov am 18 Sep. 2012
Hi Bhavnish! Please see my answer.
Bhavnish
Bhavnish am 18 Sep. 2012
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... :-)

Melden Sie sich an, um zu kommentieren.

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by