How can I sort an array with two columns?

12 次查看(过去 30 天)
If I have an array of student ID in column1 and GPAs in column2
Info = [52211 3.55; 52922 1.79; 51939 3.33; 12140 0.81]
How can I sort the array from the highest GPA to the lowest GPA.

采纳的回答

Stephen23
Stephen23 2018-10-8
编辑:Stephen23 2018-10-8
Very simply in one line using sortrows:
>> Info = [52211,3.55;52922,1.79;51939,3.33;12140,0.81]
Info =
52211 3.55
52922 1.79
51939 3.33
12140 0.81
>> Info = sortrows(Info,-2)
Info =
52211 3.55
51939 3.33
52922 1.79
12140 0.81

更多回答(2 个)

KSSV
KSSV 2018-10-8
Info = [52211 3.55; 52922 1.79; 51939 3.33; 12140 0.81] ;
[val,idx] = sort(Info(:,2),'descend') ;
iwant = Info(idx,:)

Kevin Chng
Kevin Chng 2018-10-8
Hi,
Info = [52211 3.55; 52922 1.79; 51939 3.33; 12140 0.81];
[~,I] = sort(Info(:,2),'descend');
Info(I,:);
Done!

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by