How Change Matrix Shape / Setting

1 view (last 30 days)
Juan Pablo
Juan Pablo on 2 Dec 2019
Commented: Juan Pablo on 2 Dec 2019
Hi, I would like to change the values of these matrix in a new array
A = First Column
B = Second Column,
So, I want to have these new matrix setting:
Where:
First Row = A(1,1);B(1,2);A(2,1);B(2,2);A(7,1);B(7,2);A(8,1);B(8,2), and so on with the other rows.
Thanks for your help guys,

Accepted Answer

ME
ME on 2 Dec 2019
Not necessarily a pretty solution but the below will do what you want for the given table. Should give you enough of an idea of how to adjust it for other examples too.
B = [reshape([A(1:2,1:2); A(7:8,1:2)]',[1 8]);reshape([A(3:4,1:2); A(9:10,1:2)]',[1 8]);reshape([A(5:6,1:2); A(11:12,1:2)]',[1 8])]
  2 Comments
JESUS DAVID ARIZA ROYETH
JESUS DAVID ARIZA ROYETH on 2 Dec 2019
Your solution works well for the requirement, contributing a bit to your answer could also be done:
B=cell2mat(mat2cell(reshape(A',4,[]),4,repmat(numel(A)/8,1,2))')'
Juan Pablo
Juan Pablo on 2 Dec 2019
Thanks for your help Jesus!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!