Фиктивные переменные индикатора

Что такое фиктивные переменные?

При выполнении регрессионного анализа распространено включать и непрерывный и категориальный (количественный и качественный) переменные прогноза. Когда включая категориальную независимую переменную, важно не ввести переменную как числовой массив. Числовые массивы имеют и порядок и значение. Категориальная переменная сила имеет порядок (например, порядковая переменная), но это не имеет значения. Используя числовой массив подразумевает известное “расстояние” между категориями.

Соответствующий способ включать категориальные предикторы как фиктивные переменные индикатора. Переменная индикатора имеет значения 0 и 1. Категориальная переменная с категориями c может быть представлена переменными индикатора c - 1.

Например, предположите, что у вас есть категориальная переменная с уровнями {Small,Medium,Large}. Можно представлять эту переменную с помощью двух фиктивных переменных, как показано в этой фигуре.

В этом примере X 1 является фиктивной переменной, которая имеет значение 1 для группы Medium, и 0 в противном случае. X 2 является фиктивной переменной, которая имеет значение 1 для группы Large, и 0 в противном случае. Вместе, эти две переменные представляют эти три категории. Наблюдения в группе Small имеют 0s для обеих фиктивных переменных.

Категорией, представленной всем 0s, является reference group. Когда вы включаете фиктивные переменные в модель регрессии, коэффициенты фиктивных переменных интерпретированы относительно ссылочной группы.

Создание фиктивных переменных

Автоматическое создание фиктивных переменных

Большая часть классификации и функций подбора кривой регрессии принимают категориальные предикторы.

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

  • Если данные о предикторе являются матрицей, функция принимает, что все предикторы непрерывны. Чтобы идентифицировать любые категориальные предикторы, используйте аргумент пары "имя-значение" 'CategoricalPredictors' или 'CategoricalVars'.

Для параметрической регрессии подбор кривой функционирует, такие как fitlm и fitglm, если существует c уникальные уровни в категориальном массиве, то подходящая функция оценивает c – 1 коэффициент для категориального предиктора.

Ручное создание фиктивных переменных

Если вы предпочитаете создавать свою собственную фиктивную переменную матрицу проекта, используйте dummyvar. Эта функция принимает числовой или категориальный вектор-столбец и возвращает матрицу переменных индикатора. Фиктивная переменная матрица проекта имеет столбец для каждой группы и строку для каждого наблюдения.

Например,

gender = nominal({'Male';'Female';'Female';'Male';'Female'});
dv = dummyvar(gender)
dv =

     0     1
     1     0
     1     0
     0     1
     1     0
Существует пять строк, соответствующих количеству строк в gender и двум столбцам для уникальных групп, Female и Male. Порядок следования столбцов соответствует порядку уровней в gender. Для номинальных массивов порядок по умолчанию возрастает алфавитный.

Чтобы использовать эти фиктивные переменные в модели регрессии, необходимо или удалить столбец (чтобы создать ссылочную группу) или соответствовать модели регрессии без термина прерывания. Для гендерного примера только одна фиктивная переменная необходима, чтобы представлять два пола. Заметьте то, что происходит, если вы добавляете термин прерывания в полную матрицу проекта, dv.

X = [ones(5,1) dv]
X =

     1     0     1
     1     1     0
     1     1     0
     1     0     1
     1     1     0
rank(X)
ans =

     2
Матрица проекта с термином прерывания не имеет полного ранга и не является обратимой. Из-за этой линейной зависимости используйте только переменные индикатора c - 1, чтобы представлять категориальную переменную с категориями c в модели регрессии с термином прерывания.

Смотрите также

| | |

Похожие темы