How do I find the Nth high number in a matrix A ?

29 vues (au cours des 30 derniers jours)
Victor Noronha
Victor Noronha le 25 Sep 2014
Modifié(e) : Stephen23 le 25 Sep 2014
Hi guys,
I need to find the 5th high number of a matrix. Using the max() function I can only have the 1st one.
Thanks for helping!

Réponse acceptée

Stephen23
Stephen23 le 25 Sep 2014
Modifié(e) : Stephen23 le 25 Sep 2014
As Iain suggested, sort is a great way to go, but as you mention that you have a matrix, you might want to sort every element of the matrix:
sorted = sort(values(:));
sorted(end-4)

Plus de réponses (2)

Iain
Iain le 25 Sep 2014
values = 1:500;
sorted = sort(values,'descend');
sorted(5)

José-Luis
José-Luis le 25 Sep 2014
If you want to take care of repeated values:
vals = randi(200,10);
uVals = sort( unique(vals(:)) );
result = uVals(end-4);

Catégories

En savoir plus sur Shifting and Sorting Matrices dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by