我有一个矩阵
A = 1   1   1
    2   2   2
    3   3   3
    4   4   4 
    5   5   5我有3个数组,其中包含我想要分别对各个列进行排序的顺序。第1列的示例I1,第2列的I2,....
I1 = 5   I2 = 4   I3 = 3
     4        3        2 
     3        2        1
     2        1        5
     1        5        4在对矩阵A进行排序后,我应该得到:-如果只使用I1对第一列进行排序
A = 5   1   1
    4   2   2
    3   3   3
    2   4   4 
    1   5   5如果仅使用I2对第二列进行排序
A = 1   4   1
    2   3   2
    3   2   3
    4   1   4 
    5   5   5如果仅使用I3对第3列进行排序
A = 1   1   3
    2   2   2
    3   3   1
    4   4   5 
    5   5   4如果仅使用I1、I2、I3对所有列进行排序
A = 5   4   3
    4   3   2
    3   2   1
    2   1   5 
    1   5   4请建议我怎么做。
发布于 2013-07-11 22:56:42
如果它们的尺寸都相同,这应该是您需要的:
A([I1 I2 I3]);如果要单独对列进行排序,可以使用以下语法:
A(:,2)=A(I2,2);或例如第2和3列:
A(:,[2 3]) = [A(I2,2) A(I3,3)];https://stackoverflow.com/questions/17596223
复制相似问题