Примечание
nominal и ordinal типы данных массива не рекомендуются. Для представления упорядоченных и неупорядоченных дискретных нечисловых данных используйте тип данных Категориальные массивы.
В этом примере показано, как выводить на график данные, сгруппированные по уровням категориальной переменной.
Загрузить данные образца.
load carsmallПеременная Acceleration содержит измерения ускорения на 100 образцах автомобилей. Переменная Origin - символьный массив, содержащий страну происхождения каждого автомобиля.
Создайте номинальный массив.
Новообращенный Origin в номинальный массив.
Origin = nominal(Origin); getlevels(Origin)
ans = 1x6 nominal
France Germany Italy Japan Sweden USA
В выборке шесть уникальных стран происхождения. По умолчанию nominal упорядочивает страны по возрастанию в алфавитном порядке.
Печать данных, сгруппированных по категориям.
Рисование рамочных графиков для Acceleration, сгруппированные по Origin.
figure
boxplot(Acceleration,Origin)
title('Acceleration, Grouped by Country of Origin')
Прямоугольные графики отображаются в том же порядке, что и категориальные уровни (используйте reorderlevels для изменения порядка категорий).
Лишь немногие из них называют Италию страной происхождения.
Количество категорий таблицы.
Введите в таблицу количество образцов автомобилей из каждой страны.
tabulate(Origin)
Value Count Percent
France 4 4.00%
Germany 9 9.00%
Italy 1 1.00%
Japan 15 15.00%
Sweden 2 2.00%
USA 69 69.00%
Только один автомобиль производится в Италии.
Удалить категорию.
Удалите итальянский автомобиль из образца.
Acceleration2 = Acceleration(Origin~='Italy'); Origin2 = Origin(Origin~='Italy'); getlevels(Origin2)
ans = 1x6 nominal
France Germany Italy Japan Sweden USA
Даже если автомобиль из Италии больше не в выборке, номинальная переменная, Origin2, все еще имеет категорию Italy. Заметим, что это намеренно - уровни категориального массива не обязательно совпадают со значениями.
Удаление уровня категории.
Использовать droplevels для удаления Italy категория.
Origin2 = droplevels(Origin2,'Italy');
tabulate(Origin2) Value Count Percent
France 4 4.04%
Germany 9 9.09%
Japan 15 15.15%
Sweden 2 2.02%
USA 69 69.70%
Italy категория больше не входит в номинальный массив, Origin2.
Печать данных, сгруппированных по категориям.
Нарисовать прямоугольные графики Acceleration2, сгруппированные по Origin2.
figure
boxplot(Acceleration2,Origin2)
title('Acceleration, Grouped by Country of Origin')
В сюжет больше не входит автомобиль из Италии.
boxplot | droplevels | nominal | reorderlevels