Documentation Center

  • Trial Software
  • Product Updates

removecats

Remove categories from categorical array

Syntax

Description

example

B = removecats(A) removes unused categories from the categorical array, A. The output categorical array, B, has the same size and values as A. However, B possibly has fewer categories.

example

B = removecats(A,oldcats) removes the categories specified by oldcats. The function removecats removes categories, but does not remove any elements of the array. Therefore, elements of B, whose values correspond to oldcats, are undefined.

Examples

expand all

Remove All Unused Categories

Create a categorical array representing political parties of four people.

A = categorical({'republican' 'democrat' 'democrat' 'republican'},...
    {'democrat' 'republican' 'independent'})
A = 

     republican      democrat      democrat      republican 

A is a 1-by-4 categorical array.

Summarize the categorical array, A.

summary(A)
     democrat      republican      independent 
            2               2                0 

A has three categories. democrat appears twice in the array, republican appears twice in the array, and independent is unused.

Remove the unused category, independent.

B = removecats(A)
B = 

     republican      democrat      democrat      republican 

B has the same values as A.

Display the categories of B.

categories(B)
ans = 

    'democrat'
    'republican'

B has fewer categories than A.

Remove Categories with Corresponding Values Used in A

Create a categorical array, A, containing modes of transportation.

A = categorical({'plane' 'car'; 'train' 'car'; 'plane' 'car'})
A = 

     plane      car 
     train      car 
     plane      car 

A is a 3-by-2 categorical array.

Display the categories of A.

categories(A)
ans = 

    'car'
    'plane'
    'train'

A has three categories, car, plane, and train.

Remove the category, train.

B = removecats(A,'train')
B = 

     plane            car 
     <undefined>      car 
     plane            car 

The element that was from the category train is now undefined.

Display the categories of B.

categories(B)
ans = 

    'car'
    'plane'

B has one fewer category than A.

Input Arguments

expand all

A — Categorical arrayvector | matrix | multidimensional array

Categorical array, specified as a vector, matrix, or multidimensional array.

oldcats — Categories to removestring | cell array of strings

Categories to remove, specified as a string or cell array of strings. The default is all the unused categories from A.

More About

expand all

Tips

  • ~ismember(categories(A),unique(A) returns logical true (1) for any unused category of A.

See Also

| | | | | |

Was this topic helpful?