How to Swap alternate rows of a column matrix
Ältere Kommentare anzeigen
I have a arbitary column matrix. Please suggest how to swap alternate rows of the matrix? For example:
A = [r1; r2; r3; r4; r5; r6]
Assume even number of rows. Expected is
A= [r2; r1; r4; r3; r6; r5]
Antworten (2)
Andrei Bobrov
am 28 Jan. 2016
n = size(A,1);
k = rem(n,2);
out = A(flipud(reshape(1:n-k,2,[])),:);
if k == 1, out = [out;A(end,:)]; end
Simple approach using indexing (only works for matrices with an even-number of rows):
inp = randi(9,8,4)
out = inp([2:2:end;1:2:end],:)
Kategorien
Mehr zu Matrix Indexing finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!