exponenta event banner

Сравнение элементов категориального массива

В этом примере показано, как использовать реляционные операции с категориальным массивом.

Создание категориального массива из массива ячеек векторов символов

Создайте массив символьных векторов 2 на 4.

C = {'blue' 'red' 'green' 'blue';...
    'blue' 'green' 'green' 'blue'};

colors = categorical(C)
colors = 2x4 categorical
     blue      red        green      blue 
     blue      green      green      blue 

colors является категориальным массивом 2 на 4.

Перечислите категории категориального массива.

categories(colors)
ans = 3x1 cell
    {'blue' }
    {'green'}
    {'red'  }

Определить, равны ли элементы

Используйте реляционный оператор, eq (==), чтобы сравнить первую и вторую строки colors.

colors(1,:) == colors(2,:)
ans = 1x4 logical array

   1   0   1   1

Только значения во втором столбце различаются между строками.

Сравнить весь массив с вектором символов

Сравните весь категориальный массив, colors, к вектору символов 'blue' чтобы найти местоположение всех blue значения.

colors == 'blue'
ans = 2x4 logical array

   1   0   0   1
   1   0   0   1

Есть четыре синие записи в colors, по одному в каждом углу массива.

Преобразовать в порядковый категориальный массив

Добавление математического порядка к категориям в colors. Укажите порядок категорий, представляющий порядок цветового спектра. red < green < blue.

colors = categorical(colors,{'red','green' 'blue'},'Ordinal',true)
colors = 2x4 categorical
     blue      red        green      blue 
     blue      green      green      blue 

Элементы в категориальном массиве остаются прежними.

Перечислить дискретные категории в colors.

categories(colors)
ans = 3x1 cell
    {'red'  }
    {'green'}
    {'blue' }

Сравнение элементов на основе заказа

Определение элементов в первом столбце colors больше элементов во втором столбце.

colors(:,1) > colors(:,2)
ans = 2x1 logical array

   1
   1

Оба значения в первом столбце, blue, больше соответствующих значений во втором столбце, red и green.

Найти все элементы в colors которые меньше, чем 'blue'.

colors < 'blue'
ans = 2x4 logical array

   0   1   1   0
   0   1   1   0

Функция lt (<) указывает местоположение всех green и red значения с 1.

См. также

|

Связанные примеры

Подробнее