【问题标题】:Matlab - sorting a matrixMatlab - 对矩阵进行排序
【发布时间】:2011-03-18 02:23:26
【问题描述】:

我想我可以用一个例子来最好地说明这一点: 假设我有 A = [ 1, 4, 2, 3; 0,-1, 2, -1]

我想把它变成 [1、2、3、4; 0, 2, -1, -1]

即保持列完整,按第一行中的条目排序。我该怎么做?

【问题讨论】:

标签: sorting matlab


【解决方案1】:

sortrows 命令做你想做的事:

>> A = [ 1, 4, 2, 3; 0,-1, 2, -1];
>> sortrows(A.').'   

ans =

     1     2     3     4
     0     2    -1    -1

您还可以使用来自sort 的第二个返回值来获取将矩阵转换为您想要的矩阵所需的列排列:

>> [~,ii] = sort(A(1,:))

ii =

     1     3     4     2

>> A(:,ii)

ans =

     1     2     3     4
     0     2    -1    -1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多