Extract 2 rows each to be stored in column.

1 visualizzazione (ultimi 30 giorni)
A = [7
9
2
1
8
3];
for i=1:6
B{i}=A(1:2,:);
end
Hello everyone, I have some difficulty related with extract 'n' rows to be stored in the column. I need the rows to be like below, however, I got the result as B=[7;9] instead.
B{1}= [7
9]
B{2}= [2
1]
B{3}= [8
3]

Risposta accettata

KSSV
KSSV il 5 Ago 2017
Why you want a loop? You can do this in one step using reshape.
B=reshape(A,2,[]);

Più risposte (1)

Star Strider
Star Strider il 5 Ago 2017
Try this:
R = reshape(A, 2, []);
B = mat2cell(R, 2, ones(1,size(R,2)));
Check = [B{:}] % Check Result
Check =
7 2 8
9 1 3
  2 Commenti
Siti Suhaila
Siti Suhaila il 5 Ago 2017
Thank you very much......appreciated it...
Star Strider
Star Strider il 5 Ago 2017
My pleasure.
Note that my code gives you the cell array your Question wants.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by