How to reshape an array in a specific manner

Hi all,
I was trying to reshape an array in a specific manner, however I couldn't accomplish that. Here is the example:
I have the following array:
a = [1 ; 2 ; 3 ; 1 ; 2 ; 3 ; 1 ; 2 ; 3 ; 1 ; 2 ; 3] ;
Which I would like to reshape to:
A = [1 2 3 ; 1 2 3 ; 1 2 3 ; 1 2 3] ;
How can I do this?
I have tried A=reshape(a, 4, 3) however it is returning A=[1 2 3 ; 2 3 1 ; ... etc
Thanks for your help in advance,
KMT

 Accepted Answer

>> reshape(a,3,[]).'
ans =
1 2 3
1 2 3
1 2 3
1 2 3
>>

2 Comments

thanks for that!
Remember column-major storage order...

Sign in to comment.

Categories

Find more on Operators and Elementary Operations in Help Center and File Exchange

Asked:

on 17 Feb 2020

Commented:

dpb
on 17 Feb 2020

Community Treasure Hunt

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

Start Hunting!