各自的值如何我只是做在MATLAB一個簡單的排序。我總是必須使用excel鏈接導入我的數據,對它進行排序,然後導出回matlab。這很煩人!MATLAB排序一列,並保持在第二列
我有一個矩陣< 10×10>,我想按降序排列,同時保持它的第二列各值的第一列進行排序。 Matlab似乎只是單獨對每列進行排序。
Example:
matrix a
5 4
8 9
0 6
7 3
matrix b (output)
0 6
5 4
7 3
8 9
各自的值如何我只是做在MATLAB一個簡單的排序。我總是必須使用excel鏈接導入我的數據,對它進行排序,然後導出回matlab。這很煩人!MATLAB排序一列,並保持在第二列
我有一個矩陣< 10×10>,我想按降序排列,同時保持它的第二列各值的第一列進行排序。 Matlab似乎只是單獨對每列進行排序。
Example:
matrix a
5 4
8 9
0 6
7 3
matrix b (output)
0 6
5 4
7 3
8 9
只需使用b=sortrows(a);
見here。
的sortrows
答案由@chaohuang可能是你在找什麼。但是,它根據所有列進行排序。如果您只想根據第一列進行排序,那麼您可以這樣做:
% sort only the first column, return indices of the sort
[~,sorted_inds] = sort(a(:,1));
% reorder the rows based on the sorted indices
b = a(sorted_inds,:);
這與a = sortrows(a,1)'沒有區別...... – 2012-08-03 07:38:45