How to switch two row of matrix? For example: matrix A is: 1 3 4; 2 4 5 and Y want to be 2 4 5; 1 3 4 ?

3 commentaires

Nikhil Sachan
Nikhil Sachan le 1 Fév 2019
temp=A(2,:);
A(1,:)=A(2,:);
A(2,:)=temp;
%this will swap required rows
madhan ravi
madhan ravi le 21 Fév 2019
Modifié(e) : madhan ravi le 21 Fév 2019
A more efficient answer had been accepted 5 years ago.
Tristan McRae
Tristan McRae le 22 Fév 2019
omg savage

Connectez-vous pour commenter.

 Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 5 Oct 2013
Modifié(e) : Azzi Abdelmalek le 5 Oct 2013

28 votes

A=[1 3 4; 2 4 5]
A([1 2],:)=A([2 1],:)

3 commentaires

Evil Meet
Evil Meet le 27 Oct 2020
Thank you very much. U r awesome
Kevin Moss
Kevin Moss le 12 Juin 2021
can anyone explain the logic behind why/how this works?
this works pretty clear
we take first and second all the row and make it equal to second and first all the row
for example, if you wanted to switch the third and the first row, you should type like this:
A([1 3], :) = A([3 1], :)
where ':' at second place stands for taking all the columns and '[1 3]' stands for first and third row

Connectez-vous pour commenter.

Plus de réponses (1)

Pontus Vikstål
Pontus Vikstål le 12 Août 2019
Modifié(e) : Pontus Vikstål le 12 Août 2019

1 vote

This way might be even faster.
A = [1 3 4; 2 4 5]
x = [0 1;1 0];
A = x*A
Then there's also this way
A = [1 3 4; 2 4 5]
A = flip(A)

2 commentaires

madhan ravi
madhan ravi le 25 Juil 2020
If A has more than two rows this won’t work.
Luis Mendez Lopez
Luis Mendez Lopez le 22 Sep 2020
Yeah i will do that with my 600*600 matrix

Connectez-vous pour commenter.

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by