matlab sortrows函数排列较大数据时,排列出现错误

请教一下,sortrows函数是不是有作用范围的啊,我的S矩阵里面五列共32万个数据,但是按照sortrows(S, [ 2,3 ] )排列到一万行左右的时候就不按照我的要求排列了,也就是先对2列升序再对3列升序

第1个回答  2015-04-09

MATLAB用sortrows排序320,000 * 3的矩阵速度挺快,不知你的S矩阵列数多大。看你的问题应该是S列数太大,此时可以对索引进行排序:

%% S是你的矩阵
n = size(S, 1);
t = sortrows([(1:n)' S(:,[2 3])], [2 3]);
S = S(t(:,1), :);

本回答被网友采纳
相似回答