在matlab中对列值进行排序

Sorting wrt to a column value in matlab

我的数据集中有多个列,第 2 列包含从 1 到 7 的值。我想根据第二列对我的数据集进行排序。提前致谢

关于第二列的排序是什么意思?你应该更具体或者至少给我们举个例子。 如果您需要对每一列进行简单排序,请使用以下

    A =
    95    45    92    41    13     1    84
    23     1    73    89    20    74    52
    60    82    17     5    19    44    20
    48    44    40    35    60    93    67
    89    61    93    81    27    46    83
    76    79    91     0    19    41     1

按升序对 A 的每一列进行排序:

    c = sort(A, 1)
    c =
    23     1    17     0    13     1     1
    48    44    40     5    19    41    20
    60    45    73    35    19    44    52
    76    61    91    41    20    46    67
    89    79    92    81    27    74    83
    95    82    93    89    60    93    84 

你需要的命令是sortrows

默认情况下,这根据第一列排序,但可以使用附加参数将其更改为第二列(或第五列、第十七列等)

如果 A 是您的原始数组:

B = sortrows(A,2);

会给你排序后的数组 B w.r.t 第二列