Extract 2 rows each to be stored in column.

1 Ansicht (letzte 30 Tage)
Siti Suhaila
Siti Suhaila am 5 Aug. 2017
Kommentiert: Star Strider am 5 Aug. 2017
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]

Akzeptierte Antwort

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

Weitere Antworten (1)

Star Strider
Star Strider am 5 Aug. 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 Kommentare
Siti Suhaila
Siti Suhaila am 5 Aug. 2017
Thank you very much......appreciated it...
Star Strider
Star Strider am 5 Aug. 2017
My pleasure.
Note that my code gives you the cell array your Question wants.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by