Sorting
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have 'line' matrix as follows :
line(1,m)= 1 2 3 4 5 6 7 8 9 10
line(2,m)=1.3 -2.3 4.245 12.3 -4.5 9.43 8.34 -5.3 3.54 6.4
I want to sort 2nd row in descend order, but 1st row as follows:
line(1,m)= 4 6 7 10 3 9 1 2 5 8
line(2,m)=12.3 9.43 8.34 6.4 4.245 3.54 1.3 -2.3 -4.5 -5.3
0 comentarios
Respuestas (2)
Andrei Bobrov
el 30 de Mzo. de 2012
l = [1 2 3 4 5 6 7 8 9 10
1.3 -2.3 4.245 12.3 -4.5 9.43 8.34 -5.3 3.54 6.4];
solution
[i1,i1] = sort(l(2,:),'descend');
out = l(:,i1)
OR
out = sortrows(l.',-2).'
C.J. Harris
el 30 de Mzo. de 2012
line(1,:)= [1 2 3 4 5 6 7 8 9 10];
line(2,:)= [1.3 -2.3 4.245 12.3 -4.5 9.43 8.34 -5.3 3.54 6.4];
[line(2,:), line(1,:)] = sort(line(2,:),'descend');
You also shouldn't really use 'line' as a variable name, since this is also an inbuild function, and might cause confusion if you don't clear the variable after use.
Ver también
Categorías
Más información sobre Data Types en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!