Sorting

조회 수: 3 (최근 30일)
CHAITANYA PRASAD
CHAITANYA PRASAD 2012년 3월 30일
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

답변 (2개)

Andrei Bobrov
Andrei Bobrov 2012년 3월 30일
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).'
  댓글 수: 1
CHAITANYA PRASAD
CHAITANYA PRASAD 2012년 4월 1일
Thank u Bobrov...It was very helpful..:)

댓글을 달려면 로그인하십시오.


C.J. Harris
C.J. Harris 2012년 3월 30일
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.
  댓글 수: 1
CHAITANYA PRASAD
CHAITANYA PRASAD 2012년 4월 1일
Thank u Chris...Actually i was using linerank...just for example i gave line...and it was very useful...:)

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Data Types에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by