nominal и ordinal типы данных массива не рекомендуются. Чтобы представлять упорядоченный и неупорядоченные дискретные, нечисловые данные, используйте Категориальные массивы (MATLAB) тип данных вместо этого.
В этом примере показано, как объединить категории в номинальном или порядковом массиве с помощью mergelevels. Это полезно для сворачивания категорий с немногими наблюдениями.
Загрузка демонстрационных данных.
load carsmallСоздайте номинальный массив.
Переменная Origin символьный массив, содержащий страну происхождения для 100 демонстрационных автомобилей. Преобразуйте Origin к номинальному массиву.
Origin = nominal(Origin); getlevels(Origin)
ans = 1x6 nominal array
France Germany Italy Japan Sweden USA
В данных существует шесть уникальных стран происхождения.
Плоские количества категории.
Исследуйте элементы номинального массива.
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%
В каждой европейской стране существует относительно немного наблюдений.
Объедините категории.
Объедините категории France, Germany, Italy, и Sweden в одну категорию под названием Europe.
Origin = mergelevels(Origin,{'France','Germany','Italy','Sweden'},...
'Europe');
getlevels(Origin)ans = 1x3 nominal array
Europe Japan USA
Переменная Origin теперь имеет только три уровня категории.
Плоские количества категории.
Исследуйте элементы объединенных категорий.
tabulate(Origin)
Value Count Percent
Europe 16 16.00%
Japan 15 15.00%
USA 69 69.00%
Категория Europe имеет 16% наблюдений, которые были ранее распределены на четырех странах.