MATLAB对矩阵按照某一列排序

转载:matlab 对矩阵按照某一列排序_matlab对矩阵按列升序排列-CSDN博客

升序排列:

命令:
data=[1,2,3;
      7,8,9;
      4,5,6
     ];
a1=sortrows(data,1); %按照第一列排序(升序),其他列与排序结果一一对应。
a2=sortrows(data,2); %按照第二列排序(升序),其他列与排序结果一一对应。
a3=sortrows(data,3); %按照第三列排序(升序),其他列与排序结果一一对应。
 
结果:
>> a1 =
     1     2     3
     4     5     6
     7     8     9
 
>> a2
a2 =
 
     1     2     3
     4     5     6
     7     8     9
 
>> a3
a3 =
 
     1     2     3
     4     5     6
     7     8     9
 
%也可以同时排序
%先按照第一列排序(升序),再按照第二列排序(升序),其他列与排序结果一一对应。
 
a1=sortrows(data,[1,2]); 
>> data
data =
 
     1     2     3
     7     8     9
     4     5     6
 
>> a1
a1 =
 
     1     2     3
     4     5     6
     7     8     9

降序排列:

命令:
data=[1,2,3;
      7,8,9;
      4,5,6
     ];
 
b1=sortrows(data,-1); %按照第一列排序(降序),其他列与排序结果一一对应。
b2=sortrows(data,-2); %按照第二列排序(降序),其他列与排序结果一一对应。
b3=sortrows(data,-3); %按照第三列排序(降序),其他列与排序结果一一对应。
 
结果:
>> b1
b1 =
 
     7     8     9
     4     5     6
     1     2     3
 
>> b2
b2 =
 
     7     8     9
     4     5     6
     1     2     3
 
>> b3
b3 =
 
     7     8     9
     4     5     6
     1     2     3

 

posted @ 2023-11-11 10:36  希望先生  阅读(565)  评论(0编辑  收藏  举报