В этом примере показано, как объединить два категориальных массива.
Создайте категориальный массив, A
, содержа предпочтительный напиток ланча 25 студентов в классе A.
rng('default') A = randi(3,[25,1]); A = categorical(A,1:3,{'milk' 'water' 'juice'});
A
25 1 категориальный массив с тремя отличными категориями: milk
, water
, и juice
.
Обобщите категориальный массив, A
.
summary(A)
milk 6 water 5 juice 14
Шесть студентов в классе A предпочитают, чтобы молоко, пять предпочли, чтобы вода, и четырнадцать предпочла сок.
Создайте другой категориальный массив, B
, содержа настройки 28 студентов в классе B.
B = randi(3,[28,1]); B = categorical(B,1:3,{'milk' 'water' 'juice'});
B
28 1 категориальный массив, содержащий те же категории как A
.
Обобщите категориальный массив, B
.
summary(B)
milk 9 water 8 juice 11
Девять студентов в классе B предпочитают, чтобы молоко, восемь предпочли, чтобы вода, и одиннадцать предпочла сок.
Конкатенация данных из классов A и B в один категориальный массив, Group1
.
Group1 = [A;B];
Обобщите категориальный массив, Group1
summary(Group1)
milk 15 water 13 juice 25
Group1
53 1 категориальный массив с тремя категориями: milk
, water
, и juice
.
Создайте категориальный массив, Group2
, содержа данные от 50 студентов, которым дали дополнительную опцию напитка содовой.
Group2 = randi(4,[50,1]); Group2 = categorical(Group2,1:4,{'juice' 'milk' 'soda' 'water'});
Обобщите категориальный массив, Group2
.
summary(Group2)
juice 12 milk 14 soda 10 water 14
Group2
50 на 1 категориальный массив с четырьмя категориями: juice
, milk
, soda
, и water
.
Конкатенация данных из Group1
и Group2
.
students = [Group1;Group2];
Обобщите получившийся категориальный массив, students
.
summary(students)
milk 29 water 27 juice 37 soda 10
Конкатенация добавляет категории, исключительные к второму входу, soda
, в конец списка категорий от первого входа, milk
, water
, juice
, soda
.
Используйте reordercats
изменить порядок категорий в категориальном массиве, students
.
students = reordercats(students,{'juice','milk','water','soda'}); categories(students)
ans = 4x1 cell
{'juice'}
{'milk' }
{'water'}
{'soda' }
Используйте функциональный union
найти уникальные ответы от Group1
и Group2
.
C = union(Group1,Group2)
C = 4x1 categorical
milk
water
juice
soda
union
возвращает общие значения от Group1
и Group2
без повторений. В этом случае, C
эквивалентно категориям конкатенации, students
.
Все категориальные массивы в этом примере были непорядковыми. Чтобы объединить порядковые категориальные массивы, у них должны быть те же наборы категорий включая их порядок.
cat
| categorical
| categories
| horzcat
| summary
| union
| vertcat