finding the top ten values of arrary

2 visualizaciones (últimos 30 días)
khaled DAWOUD
khaled DAWOUD el 21 de Jul. de 2012
Hello, I have an array a,i want to find the top ten max values and thier indexes , how i can do that , Thanks ?
  1 comentario
Azzi Abdelmalek
Azzi Abdelmalek el 21 de Jul. de 2012
if there are many equals numbers, what you want to do, take them all? in this case there will be more than 10 values.

Iniciar sesión para comentar.

Respuesta aceptada

per isakson
per isakson el 21 de Jul. de 2012
Editada: per isakson el 21 de Jul. de 2012
Try this:
M = magic(4);
N = 10;
[ b, ix ] = sort( M(:), 'descend' );
[ rr, cc ] = ind2sub( size(M), ix(1:N) );
for ii = 1 : N
disp( M( rr(ii), cc(ii) ) )
end
  1 comentario
khaled DAWOUD
khaled DAWOUD el 21 de Jul. de 2012
Thanks Very much , i realy appreciated you time and help

Iniciar sesión para comentar.

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 21 de Jul. de 2012
Editada: Azzi Abdelmalek el 21 de Jul. de 2012
% try this
a=[1 2 7 8 8 5 20 20 40 0 1 8 77 77 87 87 52 36 87 12 78]';
c=flipud(unique(sort(a))),
result=c(1:10); %top ten
ind=find(a>=c(10)) %their indices
resultat=flipud(sortrows([a(ind) ind],1))
% because there equals number , there is more than 10 classed. if you want take only %10 include this code
resultat1=resultat(1:10,:)
  1 comentario
khaled DAWOUD
khaled DAWOUD el 21 de Jul. de 2012
Thanks Very much , i realy appreciated you time and help

Iniciar sesión para comentar.

Categorías

Más información sobre Data Types en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by