countcats

Отсчет вхождений элементов категориального массива по категориям

Описание

пример

B = countcats(A) возвращает количество элементов в каждой категории категориального массива, A.

  • Если A является вектором, тогда countcats возвращает количество элементов в каждой категории.

  • Если A является матрицей, тогда countcats обрабатывает столбцы A как векторы и возвращает счетчики категорий для каждого столбца A.

  • Если A является многомерным массивом, затем countcats действует вдоль первого измерения массива, размер которого не равен 1.

пример

B = countcats(A,dim) возвращает счетчики категорий по размерности dim.

Например, счетчики категорий каждой строки можно вернуть в категориальный массив с помощью countcats(A,2).

Примеры

свернуть все

Создайте категориальный вектор 1 на 5.

A = categorical({'plane' 'car' 'train' 'car' 'plane'})
A = 1x5 categorical
     plane      car      train      car      plane 

A имеет три категории. Для перечисления категорий и их порядка используйте categories функция. Каждый элемент A принадлежит к одной из категорий, перечисленных вызовом categories.

categories(A)
ans = 3x1 cell
    {'car'  }
    {'plane'}
    {'train'}

Найти количество элементов в каждой категории A.

B = countcats(A)
B = 1×3

     2     2     1

Первый элемент в B соответствует первой категории A, что car. Второй элемент в B соответствует второй категории A, что plane. Третий элемент B соответствует третьей категории A, что train.

Начиная с A является вектор-строка, countcats возвращает вектор-строку.

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

valueset = 1:3;
catnames = {'red' 'green' 'blue'};

A = categorical([1 3; 2 1; 3 1],valueset,catnames)
A = 3x2 categorical
     red        blue 
     green      red  
     blue       red  

A имеет три категории, red, green, и blue.

Найдите счетчики категорий для каждого столбца в A.

B = countcats(A)
B = 3×2

     1     2
     1     0
     1     1

Первая строка B соответствует первой категории A. Значение, red, происходит один раз в первом столбце A и дважды во втором столбце.

Вторая строка B соответствует второй категории A. Значение, green, происходит один раз в первом столбце A, и это не происходит во втором столбце.

Третья строка B соответствует третьей категории A. Значение, blue, происходит один раз в первом столбце A и один раз во втором столбце.

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

valueset = 1:3;
catnames = {'red' 'green' 'blue'};

A = categorical([1 3; 2 1; 3 1],valueset,catnames)
A = 3x2 categorical
     red        blue 
     green      red  
     blue       red  

A имеет три категории, red, green, и blue.

Найдите счетчики категорий A вдоль второго измерения.

B = countcats(A,2)
B = 3×3

     1     0     1
     1     1     0
     1     0     1

Первый столбец B соответствует первой категории A. Значение, red, происходит один раз в первой строке A, один раз во второй строке, и один раз в третьей строке.

Второй столбец B соответствует второй категории A. Значение, green, происходит только в одном элементе. Это происходит во второй строке A.

Третий столбец B соответствует третьей категории A. Значение, blue, происходит один раз в первой строке A и один раз в третьей строке.

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

valueset = 1:3;
catnames = {'red' 'green' 'blue'};

A = categorical([1;3;2;1;3;1],valueset,catnames)
A = 6x1 categorical
     red 
     blue 
     green 
     red 
     blue 
     red 

Удалите blue категория.

A = removecats(A,'blue')
A = 6x1 categorical
     red 
     <undefined> 
     green 
     red 
     <undefined> 
     red 

A имеет две категории, red и green. Элементы A которые были из blue теперь не определена категория.

Найти количество элементов в каждой категории A.

B = countcats(A)
B = 2×1

     3
     1

Первый элемент в B соответствует первой категории A. Значение, red, происходит три раза в A.

Второй элемент в B соответствует второй категории A. Значение, green, происходит один раз в A.

countcats не возвращает никакой информации о неопределенных элементах.

Используйте summary функция для просмотра количества неопределенных элементов в дополнение к количеству элементов в каждой категории A.

summary(A)
     red              3 
     green            1 
     <undefined>      2 

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

свернуть все

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

Размерность для работы, заданная как положительный целочисленный скаляр Если значение не задано, то по умолчанию это первое измерение массива, не равный 1.

Рассмотрим двумерный категориальный массив, A.

Если dim = 1, затем countcats(A,1) возвращает счетчики категорий для каждого столбца A.

Если dim = 2, затем countcats(A,2) возвращает счетчики категорий для каждой строки A.

Если dim больше ndims(A), затем countcats(A) возвращает массив того же размера, что и A для каждой категории. countcats возвращает 1 для элементов соответствующей категории и 0 в противном случае.

Совет

  • Чтобы найти количество неопределенных элементов в категориальном массиве, A, вы должны использовать summary или isundefined.

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

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

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