Main Content

Compare Categorical Array Elements

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

Create Categorical Array

Create a categorical array.

C = ["blue" "red" "green" "blue"; ...
     "blue" "green" "green" "blue"];

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

List the categories of the categorical array.

categories(colors)
ans = 3x1 cell
    {'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 = 1x4 logical array

   1   0   1   1

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

Compare Entire Array to String

Compare the entire categorical array, colors, to the string "blue" to find the location of all blue values.

colors == "blue"
ans = 2x4 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 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. The elements in the categorical array remain the same.

colors = categorical(colors,["red" "green" "blue"],Ordinal=true)
colors = 2x4 categorical
     blue      red        green      blue 
     blue      green      green      blue 

List the categories in colors.

categories(colors)
ans = 3x1 cell
    {'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 = 2x1 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 = 2x4 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