Sort a matrix based on one row?
Afficher commentaires plus anciens
lets say we have a 3x3 matrix as
a= 2 5 3;
2 8 1;
4 1 9;
and I want this matrix sorted based on its 2nd row in ascending order i.e.
answer= 3 2 5;
1 2 8;
9 4 1;
Thank you for any help you can offer.
Réponses (1)
Walter Roberson
le 22 Avr 2013
[temp, order] = sort(a(2,:));
answer = a(:,order);
3 commentaires
Saeid
le 15 Juin 2025
Neat!
Akira Agata
le 20 Juin 2025
Another solution:
answer = sortrows(a', 2)';
Stephen23
le 22 Juin 2025
answer = sortrows(a.', 2).';
Using transpose, rather than complex conjugate transpose.
Catégories
En savoir plus sur Shifting and Sorting Matrices dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!