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