nominal
и ordinal
типы данных массива не рекомендуются. Чтобы представлять упорядоченный и неупорядоченные дискретные, нечисловые данные, используйте Категориальные массивы (MATLAB) тип данных вместо этого.
В этом примере показано, как определить порядок сортировки для порядковых массивов.
Загрузка демонстрационных данных.
AllSizes = {'medium','large','small','small','medium',... 'large','medium','small'};
Созданная переменная, AllSizes
, массив ячеек из символьных векторов, содержащий измерения размера на восьми объектах.
Создайте порядковый массив.
Преобразуйте AllSizes
к порядковому массиву с уровнями small
<medium
<large
.
AllSizes = ordinal(AllSizes,{},{'small','medium','large'}); getlevels(AllSizes)
ans = 1x3 ordinal array
small medium large
Сортировка порядкового массива.
Когда вы сортируете порядковые массивы, отсортированные наблюдения находятся в том же порядке как уровни категории.
sizeSort = sort(AllSizes); sizeSort(:)
ans = 8x1 ordinal array
small
small
small
medium
medium
medium
large
large
Отсортированный порядковый массив, sizeSort
, содержит наблюдения, упорядоченные от малого и большого.