Переупорядочьте категории в категориальном массиве
B = reordercats(A)
B = reordercats(A,neworder)
B = reordercats(
переупорядочивает категории в категориальном массиве, A
)A
, чтобы быть в алфавитно-цифровом порядке.
Порядок категорий используется функциями, такими как summary
и histogram
. Если категориальный массив является порядковым, порядок категорий задает их математическое упорядоченное расположение. Первая заданная категория является самой маленькой, и последняя категория является самой большой.
Создайте два категориальных массива, X
и Y
.
X = categorical({'frog';'cat';'cat';'ant';'frog'})
X = 5x1 categorical array
frog
cat
cat
ant
frog
Y = categorical({'deer';'bear';'eagle';'deer'})
Y = 4x1 categorical array
deer
bear
eagle
deer
X
является категориальным массивом 5 на 1. Категории X
являются отсортированными уникальными значениями от массива: {'ant';'cat';'frog'}
.
Y
является 4 1 категориальным массивом. Категории Y
являются отсортированными уникальными значениями от массива: {'bear';'deer';'eagle'}
.
Конкатенация X
и Y
в один категориальный массив, A
.
A = [X;Y]
A = 9x1 categorical array
frog
cat
cat
ant
frog
deer
bear
eagle
deer
vertcat
добавляет значения от Y
до значений от X
.
Перечислите категории категориального массива, A
.
acats = categories(A)
acats = 6x1 cell array
{'ant' }
{'cat' }
{'frog' }
{'bear' }
{'deer' }
{'eagle'}
vertcat
добавляет категории Y
к категориям от X
. Категории A
не в алфавитном порядке.
Переупорядочьте категории A
в алфавитный порядок.
B = reordercats(A)
B = 9x1 categorical array
frog
cat
cat
ant
frog
deer
bear
eagle
deer
Выходной категориальный массив, B
, имеет те же элементы в том же порядке как входной категориальный массив, A
.
Перечислите категории категориального массива, B
.
bcats = categories(B)
bcats = 6x1 cell array
{'ant' }
{'bear' }
{'cat' }
{'deer' }
{'eagle'}
{'frog' }
Категории B
в алфавитном порядке.
Создайте категориальный массив, содержащий цвет различных элементов.
A = categorical({'red';'green';'blue';'red';'green';'red';'blue';'blue'})
A = 8x1 categorical array
red
green
blue
red
green
red
blue
blue
A
является 8 1 категориальным массивом.
Отобразите категории A
.
categories(A)
ans = 3x1 cell array
{'blue' }
{'green'}
{'red' }
Категории A
в алфавитном порядке и не имеют никакого математического значения.
Переупорядочьте категории, чтобы совпадать с порядком, обычно используемым для цветов.
B = reordercats(A,{'red','green','blue'})
B = 8x1 categorical array
red
green
blue
red
green
red
blue
blue
B
содержит те же значения как A
.
Отобразите категории B
.
categories(B)
ans = 3x1 cell array
{'red' }
{'green'}
{'blue' }
B
не является порядковым, и порядок категорий не имеет никакого математического значения. Несмотря на то, что категории появляются в порядке спектра цветов, реляционных операций, такой как больше, чем и меньше, чем, не имеют никакого значения.
Создайте порядковый категориальный массив, A
, содержа режимы транспортировки. Закажите категории на основе средней стоимости перемещения.
A = categorical({'plane';'car'; 'train';'car';'plane';'car'},... {'car','train','plane'},'Ordinal',true)
A = 6x1 categorical array
plane
car
train
car
plane
car
A
является 6 1 порядковым категориальным массивом.
Отобразите категории A
.
categories(A)
ans = 3x1 cell array
{'car' }
{'train'}
{'plane'}
Поскольку A
является порядковым, car < train < plane
.
Переупорядочьте категории, чтобы отразить уменьшение в стоимости перемещения train.
B = reordercats(A,{'train','car','plane'})
B = 6x1 categorical array
plane
car
train
car
plane
car
B
содержит те же значения как A
.
Отобразите категории B
.
categories(B)
ans = 3x1 cell array
{'train'}
{'car' }
{'plane'}
Математическим упорядоченным расположением категорий является теперь train < car < plane
. Результаты реляционных операций, min
и max
отражают новое упорядоченное расположение категории.
Создайте категориальный массив, A
, содержа режимы транспортировки.
A = categorical({'plane';'car';'train';'car';'car';'plane';'car'})
A = 7x1 categorical array
plane
car
train
car
car
plane
car
Отобразите категории A
.
categories(A)
ans = 3x1 cell array
{'car' }
{'plane'}
{'train'}
Переупорядочьте категории от наименьшего до самого частого вхождения в A
.
B = countcats(A); [C,neworder] = sort(B); neworder
neworder = 3×1
3
2
1
D = reordercats(A,neworder); categories(D)
ans = 3x1 cell array
{'train'}
{'plane'}
{'car' }
Поскольку countcats
считает случаи каждой категории, neworder
описывает, как переупорядочить категории — не элементы — A
.
A
Категориальный массивКатегориальный массив, заданный как вектор, матрица или многомерный массив. Если A
является порядковым категориальным массивом, переупорядочение категорий изменяет математическое значение. Следовательно, операторы отношения, такой как больше, чем и меньше, чем, могут возвратить различные результаты.
neworder
Новый порядок категории для B
Новый порядок категории для B
, заданного как массив ячеек из символьных векторов, массив строк или числовой вектор. neworder
должен быть перестановкой categories(A)
.
Чтобы преобразовать категориальный массив, B
, к порядковому категориальному массиву, использует B = categorical(B,'Ordinal',true)
. Можно задать порядок категорий с
, где порядок значений в B = categorical(B,valueset,'Ordinal',true)
задает порядок категории.valueset
Эта функция полностью поддерживает "высокие" массивы. Для получения дополнительной информации см. Раздел "Высокие массивы".
Эта функция полностью поддерживает распределенные массивы. Для получения дополнительной информации смотрите функции MATLAB Выполнения с Распределенными Массивами (Parallel Computing Toolbox).
addcats
| categories
| iscategory
| mergecats
| removecats
| renamecats
| setcats
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.