Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

Compare Categorical Array Elements

This example shows how to use relational operations with a categorical array.

Create Categorical Array from Cell Array of Character Vectors

Create a 2-by-4 cell array of character vectors.

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

colors = categorical(C)
colors = 

     blue      red        green      blue 
     blue      green      green      blue 

colors is a 2-by-4 categorical array.

List the categories of the categorical array.

categories(colors)
ans =

  3×1 cell array

    'blue'
    'green'
    'red'

Determine If Elements Are Equal

Use the relational operator, eq (==), to compare the first and second rows of colors.

colors(1,:) == colors(2,:)
ans =

  1×4 logical array

   1   0   1   1

Only the values in the second column differ between the rows.

Compare Entire Array to Character Vector

Compare the entire categorical array, colors, to the character vector 'blue' to find the location of all blue values.

colors == 'blue'
ans =

  2×4 logical array

   1   0   0   1
   1   0   0   1

There are four blue entries in colors, one in each corner of the array.

Convert to an Ordinal Categorical Array

Add a mathematical ordering to the categories in colors. Specify the category order that represents the ordering of color spectrum, red < green < blue.

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

     blue      red        green      blue 
     blue      green      green      blue 

The elements in the categorical array remain the same.

List the discrete categories in colors.

categories(colors)
ans =

  3×1 cell array

    'red'
    'green'
    'blue'

Compare Elements Based on Order

Determine if elements in the first column of colors are greater than the elements in the second column.

colors(:,1) > colors(:,2)
ans =

  2×1 logical array

   1
   1

Both values in the first column, blue, are greater than the corresponding values in the second column, red and green.

Find all the elements in colors that are less than 'blue'.

colors < 'blue'
ans =

  2×4 logical array

   0   1   1   0
   0   1   1   0

The function lt (<) indicates the location of all green and red values with 1.

See Also

|

Related Examples

More About

Was this topic helpful?