Класс: набор данных
(Не Рекомендуемый) сортировка строк массива набора данных
dataset
тип данных не рекомендуется. Чтобы работать с гетерогенными данными, используйте MATLAB®
table
тип данных вместо этого. Смотрите MATLAB table
документация для получения дополнительной информации.
B = sortrows(A)
B = sortrows(A,vars)
B = sortrows(A,'obsnames')
B = sortrows(A,vars,mode)
[B,idx] = sortrows(A)
B = sortrows(A)
возвращает копию массива набора данных A
, с наблюдениями, отсортированными в порядке возрастания по всем переменным в A
. Наблюдения в B
сортируются сначала первой переменной, затем второй переменной, и так далее. Каждая переменная в A
должен быть допустимый вход к sort
, или, если переменная имеет несколько столбцов к MATLAB sortrows
функционируйте или к его ownsortrows
метод.
B = sortrows(A,vars)
сортирует наблюдения в A
переменными, заданными vars
Вар
положительное целое число, вектор из положительных целых чисел, вектора символов, массива строк, массива ячеек из символьных векторов или логического вектора.
B = sortrows(A,'obsnames')
сортирует наблюдения в A
именем наблюдения.
B = sortrows(A,vars,mode)
виды в направлении заданы mode
. Когда mode
'ascend'
(значение по умолчанию) или 'descend'
sortrows
виды A
переменными, заданными vars
в порядке возрастания или убывания, соответственно. mode
может также быть массив строк или массив ячеек, содержащий 'ascend'
или 'descend'
, задавать различное направление сортировки для каждой переменной в vars
. Задайте []
для vars
к виду с помощью всех переменных.
[B,idx] = sortrows(A)
также возвращает вектор индекса idx
таким образом, что B = A(idx,:)
.
Сортировка данных в hospital.mat
возрастом и затем фамилией:
load hospital hospital(1:5,1:3) ans = LastName Sex Age YPL-320 'SMITH' Male 38 GLI-532 'JOHNSON' Male 43 PNI-258 'WILLIAMS' Female 38 MIJ-579 'JONES' Female 40 XLK-030 'BROWN' Female 49 hospital = sortrows(hospital,{'Age','LastName'}); hospital(1:5,1:3) ans = LastName Sex Age REV-997 'ALEXANDER' Male 25 FZR-250 'HALL' Male 25 LIM-480 'HILL' Female 25 XUE-826 'JACKSON' Male 25 SCQ-914 'JAMES' Male 25
Сортировка данных в hospital
полом в порядке возрастания и возрастом в порядке убывания.
hospital = sortrows(hospital,{'Sex','Age'},{'ascend','descend'}); hospital(1:5,1:3) ans = LastName Sex Age XLK-030 'BROWN' Female 49 GGU-691 'HUGHES' Female 49 KKL-155 'ADAMS' Female 48 HQO-561 'BRYANT' Female 48 BKD-785 'CLARK' Female 48 hospital(end-4:end,1:3) ans = LastName Sex Age VNL-702 'MOORE' Male 28 REV-997 'ALEXANDER' Male 25 FZR-250 'HALL' Male 25 XUE-826 'JACKSON' Male 25 SCQ-914 'JAMES' Male 25