grp2idx

Создайте вектор индекса из сгруппированной переменной

Описание

[g,gN] = grp2idx(s) создает вектор индекса g из сгруппированной переменной s. Область выхода g - вектор целочисленных значений от 1 до K числа различных групп. gN - массив ячеек из векторов символов, представляющий список имен групп.

пример

[g,gN,gL] = grp2idx(s) также возвращает вектор-столбец gL представление списка уровней группы с совпадающим типом данных, что и s.

Примеры

свернуть все

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

Загрузите hospital набор данных и преобразование возрастов в hospital.Ages к категориальным значениям, представляющим возраст по десятилетиям.

load hospital
edges = 0:10:100; % Bin edges
labels = strcat(num2str((0:10:90)','%d'),{'s'}); % Labels for the bins
s = discretize(hospital.Age,edges,'Categorical',labels);

Отобразите возраст и группы возрастов для первых пяти выборок.

ages = hospital.Age(1:5)
ages = 5×1

    38
    43
    38
    40
    49

groups = s(1:5)
groups = 5x1 categorical
     30s 
     40s 
     30s 
     40s 
     40s 

Создайте вектор индекса из категориального вектора s.

[g,gN,gL] = grp2idx(s);

Отображение значений индекса, соответствующих первым пяти выборкам.

g(1:5)
ans = 5×1

     4
     5
     4
     5
     5

Воспроизведите входной параметр s использование выхода gL.

gL(g(1:5))
ans = 5x1 categorical
     30s 
     40s 
     30s 
     40s 
     40s 

Использование gN(g) для воспроизведения входного параметра s как массив ячеек из векторов символов.

gN(g(1:5))
ans = 5x1 cell
    {'30s'}
    {'40s'}
    {'30s'}
    {'40s'}
    {'40s'}

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

свернуть все

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

grp2idx лечит NaNs (числовое, длительность или логическое), '' (пустые символьные массивы или массивы ячеек из векторов символов), "" (пустые строки), <missing> значения (строка), <undefined> значения (категориальные) и NaTs (datetime) в s как отсутствующие значения и возвращает NaNs в соответствующих строках g. Выходные выходы gN и gL не включать записи для отсутствующих значений.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | cell | categorical | datetime | duration

Выходные аргументы

свернуть все

Групповой индекс, возвращенный как положительный целочисленный вектор со значениями от 1 до K числа различных групп в s.

Список имен групп, возвращенный как массив ячеек из векторов символов.

Порядок gN зависит от типа данных сгруппированной переменной s.

  • Для числовых и логических векторов порядок является отсортированным порядком s.

  • Для категориальных векторов порядок является порядком categories(s).

  • Для других типов данных порядок является порядком первого внешнего вида в s.

gN(g) воспроизводит содержимое s в массиве ячеек.

Список уровней групп, возвращенный к совпадающий тип данных, что и s: категориальный, численный, логический, datetimeвектор длительности, массив ячеек из векторов символов или символьный массив с каждой строкой, представляющей метку группы. (Программа обрабатывает массивы строк как массивы ячеек векторов символов.)

Набор групп и их порядок в gL те же, что и в gN, но gL имеет тот совпадающий тип данных что и s.

Если s является символьной матрицей, тогда gL(g,:) воспроизводит s; в противном случае gL(g) воспроизводит s.

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

.
Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте