Rearranging Array Rows into Multiple Blocks while Maintaining the Old Order

2 vues (au cours des 30 derniers jours)
Saeid
Saeid le 18 Mar 2019
Commenté : Saeid le 18 Mar 2019
How can I rearrange an array from alternating rows to multiple blocks, maintaining the order of the rows?
  2 commentaires
madhan ravi
madhan ravi le 18 Mar 2019
please illustrate with a input and the desired output as text instead of picture
Saeid
Saeid le 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];

Connectez-vous pour commenter.

Réponse acceptée

Jos (10584)
Jos (10584) le 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

Plus de réponses (1)

madhan ravi
madhan ravi le 18 Mar 2019
Modifié(e) : madhan ravi le 18 Mar 2019
reshape(matrix,[],size(matrix,2))

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by