Azzera filtri
Azzera filtri

sort rows of a matrix based on their maximum value

10 visualizzazioni (ultimi 30 giorni)
Hello,
Consider a 100x10 matrix.
Each 1x10 row has a maximum value.
How can I sort the rows of the matrix in ascending order based only on their maximum value?
Thank you very much.
Best,
Pavlos

Risposta accettata

Jan
Jan il 11 Set 2013
A = rand(100, 10);
maxA = max(A, [], 2);
[dummy, index] = sort(maxA);
B = A(index, :);
  1 Commento
Simon
Simon il 11 Set 2013
Great! Better solution than mine!
Side note: you may use "~" instead of "dummy".

Accedi per commentare.

Più risposte (2)

Azzi Abdelmalek
Azzi Abdelmalek il 11 Set 2013
Modificato: Azzi Abdelmalek il 11 Set 2013
Edit2
[ii,ii]=sort(max(A'))
BB=A(ii,:)

Simon
Simon il 11 Set 2013
A=randi(100,10,5);
for n = 1:size(A, 1)
B(n,:) = sort(A(n,:));
end

Categorie

Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by