Сортировка по значению столбца в Matlab

У меня есть несколько столбцов в моем наборе данных, а столбец 2 содержит значение от 1 до 7. Я хочу отсортировать свой набор данных по второму столбцу. заранее спасибо


person Shahzaib Ahmed    schedule 10.07.2018    source источник


Ответы (2)


Вам нужна команда sortrows.

По умолчанию это сортируется по первому столбцу, но можно использовать дополнительный аргумент, чтобы изменить его на 2-й (или 5-й, 17-й и т. д.)

Если A - ваш исходный массив:

B = sortrows(A,2);

даст вам отсортированный массив B по второму столбцу

person etmuse    schedule 10.07.2018
comment
Большое спасибо, это сработало - person Shahzaib Ahmed; 10.07.2018
comment
если я хочу разделить свой набор данных для всех значений 2-го столбца. Как бы я это сделал? Означает, что мне нужен отдельный набор данных, когда значение 2-го столбца равно 1, 2, 3 и так далее. - person Shahzaib Ahmed; 10.07.2018

Что вы имели в виду под сортировкой по второму столбцу? Вы должны быть более конкретными или, по крайней мере, привести нам пример. Если вам нужна простая сортировка по каждому столбцу, используйте следующее

    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 
person Rijo Kuriakose    schedule 10.07.2018
comment
Спасибо, помогло - person Shahzaib Ahmed; 10.07.2018