How can i create a matrix which is a copy of an other matrix except 2 rows have to swap.
for example 4*4nmatrix called M how can i create an new matrix which is a copy of M, but the first and the third row are swapped

 Réponse acceptée

Stephen23
Stephen23 le 26 Nov 2019

4 votes

>> X = [1,3]; % rows to swap
>> M = randi(9,4,5)
M =
6 7 6 2 9
2 3 2 1 1
1 6 9 7 9
4 6 7 5 2
>> W = M;
>> W(X,:) = W(X([2,1]),:)
W =
1 6 9 7 9
2 3 2 1 1
6 7 6 2 9
4 6 7 5 2

3 commentaires

Adam Danz
Adam Danz le 26 Nov 2019
+1 simple & neat
Narayan Sharma
Narayan Sharma le 11 Août 2020
what does the [2,1] call for
Adam Danz
Adam Danz le 11 Août 2020
With the syntax W(X([A,B]),:) row A becomes row 1 and row B becomes row 2.
Indexing is lesson 1 in Matlab.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by