Algorithm which swaps the columns of a matrix A mx(n*2) without looping?

1 visualizzazione (ultimi 30 giorni)
Hi all, I need an algorithm which swaps the columns of a matrix A mx(n*2) without looping in the following way:
%if A=[column 1, column 2, ... column n, column n+1, ... column n*2]
%I want B=[column 1, column n+1, column 2, column n+2, ... column n, column 2*n]
E.g.
A=[1 2 3 4; 5 6 0 9; 1 2 1 8]
B=[1 4 2 3; 5 9 6 0; 1 8 2 1]
Could you help me?

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 7 Mag 2014
i1 = reshape(1:size(A,2),[],2)';
B = A(:,i1(:));

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices 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