mergecats

Объедините категории в категориальный массив

Описание

пример

B = mergecats(A,oldcats) объединяет две или более категории в A в первую категорию, oldcats(1). Любые значения в A от oldcats стать oldcats(1) в B.

пример

B = mergecats(A,oldcats,newcat) объединяет oldcats в одну новую категорию, newcat. Любые значения в A от oldcats стать newcat в B.

Примеры

свернуть все

Создайте категориальный массив, содержащий различные цвета.

A = categorical({'red';'blue';'pink';'red';'blue';'red'})
A = 6x1 categorical
     red 
     blue 
     pink 
     red 
     blue 
     red 

A представляет собой категориальный массив 6 на 1.

Отображение категорий A.

categories(A)
ans = 3x1 cell
    {'blue'}
    {'pink'}
    {'red' }

Три категории указаны в алфавитном порядке.

Объедините категории red и pink в категорию red. Задайте red первый в oldcats для использования в качестве объединенной категории.

oldcats = {'red','pink'};
B = mergecats(A,oldcats)
B = 6x1 categorical
     red 
     blue 
     red 
     red 
     blue 
     red 

mergecats заменяет значение pink от A(3) с red.

Отображение категорий B.

categories(B)
ans = 2x1 cell
    {'blue'}
    {'red' }

B имеет две категории вместо трех.

Создайте категориальный массив, содержащий различные элементы.

A = categorical({'shirt' 'pants'; 'shoes' 'shirt'; 'dress' 'belt'})
A = 3x2 categorical
     shirt      pants 
     shoes      shirt 
     dress      belt  

Отображение категорий A.

categories(A)
ans = 5x1 cell
    {'belt' }
    {'dress'}
    {'pants'}
    {'shirt'}
    {'shoes'}

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

Объедините категории belt и shoes в новую категорию под названием other.

B = mergecats(A,{'belt' 'shoes'},'other')
B = 3x2 categorical
     shirt      pants 
     other      shirt 
     dress      other 

Значение other заменяет все образцы belt и shoes.

Отображение категорий B.

categories(B)
ans = 4x1 cell
    {'other'}
    {'dress'}
    {'pants'}
    {'shirt'}

B имеет четыре категории, и порядок больше не алфавитный. other появляется на месте belt.

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

A = categorical([1 2 3 2 1],1:3,{'poor','fair','good'},'Ordinal',true)
A = 1x5 categorical
     poor      fair      good      fair      poor 

Отображение категорий A.

categories(A)
ans = 3x1 cell
    {'poor'}
    {'fair'}
    {'good'}

Начиная с A является порядковым, категории имеют математическое упорядоченное расположение poor < fair < good.

Учитывайте все fair или poor значения, которые будут bad. Начиная с A является порядковым, категории, которые нужно объединить, должны быть последовательными.

B = mergecats(A,{'fair' 'poor'},'bad')
B = 1x5 categorical
     bad      bad      good      bad      bad 

Значение bad заменяет все образцы fair и poor.

Отображение категорий B.

categories(B)
ans = 2x1 cell
    {'bad' }
    {'good'}

B имеет две категории с математическим упорядоченным расположением: bad < good.

Входные параметры

свернуть все

Категориальный массив, заданный как векторный, матричный или многомерный массив.

Категории для слияния, заданные как массив ячеек из векторов символов или строковые массивы. Если A является порядковым, тогда объединяемые категории должны быть последовательными.

Новая категория, заданная как вектор символов или строковый скаляр.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2013b