Matlab - Como extraer los 10 números mas grandes de un vector

   
Vista:
Imágen de perfil de Efren

Como extraer los 10 números mas grandes de un vector

Publicado por Efren (6 intervenciones) el 03/05/2016 22:29:54
Saludos, tengo un vector s=[0.25 0.5 10 0.1 15 10 25 18 15 13 12 30 0.3 0.25 0.5 10 0.1 15 10 25 18 15 ];

deseo saber si hay algún comando para extraer los 10 números mas grandes de ese vector.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Daniel

Como extraer los 10 números mas grandes de un vector

Publicado por Daniel (212 intervenciones) el 05/05/2016 19:35:42
Aqui te dejo la forma de hacerlo y algunas cosas mas que te pueden servir....



1
2
3
4
5
6
7
8
9
10
s=[0.25 0.5 10 0.1 15 10 25 18 15 13 12 30 0.3 0.25 0.5 10 0.1 15 10 25 18 15 ];
 [p,orden]=sort(s,'descend');
 s10max=p(1:10);
 s10maxpos=orden(1:10);
 disp('los 10 elementos mas grandes son: ')
 disp(s10max)
 disp('sus posiciones son: ')
 disp(s10maxpos)
 disp('el orden de aparicion es: ')
 disp(s(sort(s10maxpos)))

Comentanos como te fue


Saludos

Daniel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Efren

Como extraer los 10 números mas grandes de un vector

Publicado por Efren (6 intervenciones) el 05/05/2016 20:06:13
Saludos; su respuesta esta bien cenicilla , yo estaba yendo por el lado mas complejo, muchas gracias me a servido mucho

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
n=10;%numero de muestras a extraer
x=[0.25 0.5 10 0.1 15 10 25 18 15 13 12 30 0.3 0.25 0.5 10 0.1 15 10 25 18 15 ];
xa=[];
ax=x;
for uno=1:n;
[val pos]=max(x);
x(pos)=[];
xa(uno)=val;
 
uno=uno+1;
plot(xa)
hold on
pause(0.2)
end
YYY=xa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar