Rearranging Array Rows into Multiple Blocks while Maintaining the Old Order

2 visualizzazioni (ultimi 30 giorni)
How can I rearrange an array from alternating rows to multiple blocks, maintaining the order of the rows?
  2 Commenti
madhan ravi
madhan ravi il 18 Mar 2019
please illustrate with a input and the desired output as text instead of picture
Saeid
Saeid il 18 Mar 2019
The matrix:
[a a a a a;
b b b b b;
c c c c c;
d d d d d;
e e e e e ;
f f f f f ]
should be converted to:
[a a a a a ;
c c c c c;
e e e e e ;
b b b b b;
d d d d d ;
f f f f f];

Accedi per commentare.

Risposta accettata

Jos (10584)
Jos (10584) il 18 Mar 2019
You should learn about indexing, one of the most essential aspects of Matlab:
M = randi(4,10,5) ; M(:,1) = 1:size(M,1) % example data
M2 = M([1:2:end 2:2:end], :) % re-ordering the rows

Più risposte (1)

madhan ravi
madhan ravi il 18 Mar 2019
Modificato: madhan ravi il 18 Mar 2019
reshape(matrix,[],size(matrix,2))

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by