Как использовать фиктивные переменные в регрессионном анализе


Линейная регрессия — это метод, который мы можем использовать для количественной оценки взаимосвязи между одной или несколькими переменными-предикторами и переменной- откликом .

Обычно мы используем линейную регрессию с количественными переменными.Иногда называемые «числовыми» переменными, это переменные, которые представляют измеримую величину. Примеры включают:

  • Количество квадратных метров в доме
  • Численность населения города
  • Возраст человека

Однако иногда мы хотим использовать категориальные переменные в качестве переменных-предикторов. Это переменные, которые принимают имена или метки и могут вписываться в категории. Примеры включают:

  • Цвет глаз (например, «голубой», «зеленый», «карий»)
  • Пол (например, «мужской», «женский»)
  • Семейное положение (например, «замужем», «холост», «разведен»)

При использовании категориальных переменных не имеет смысла просто присваивать такие значения, как 1, 2, 3, таким значениям, как «синий», «зеленый» и «коричневый», потому что бессмысленно говорить, что зеленый дважды такой же красочный, как синий, или что коричневый в три раза красочнее синего.

Вместо этого решение состоит в использовании фиктивных переменных.Это переменные, которые мы создаем специально для регрессионного анализа и которые принимают одно из двух значений: ноль или единицу.

Пустые переменные: числовые переменные, используемые в регрессионном анализе для представления категориальных данных, которые могут принимать только одно из двух значений: ноль или единицу.

Количество фиктивных переменных, которые мы должны создать, равно k -1, где k — это количество различных значений, которые может принимать категориальная переменная.

В следующих примерах показано, как создавать фиктивные переменные для разных наборов данных.

Пример 1. Создание фиктивной переменной только с двумя значениями

Предположим, у нас есть следующий набор данных, и мы хотели бы использовать пол и возраст для прогнозирования дохода :

Чтобы использовать пол в качестве предиктора в регрессионной модели, мы должны преобразовать его в фиктивную переменную.

Поскольку в настоящее время это категориальная переменная, которая может принимать два разных значения («Мужской» или «Женский»), нам нужно создать только k -1 = 2-1 = 1 фиктивную переменную.

Чтобы создать эту фиктивную переменную, мы можем выбрать одно из значений («Мужской» или «Женский») для представления 0, а другое — для представления 1.

Как правило, мы обычно представляем наиболее часто встречающееся значение с 0, что будет «мужским» в этом наборе данных.

Таким образом, вот как мы можем преобразовать пол в фиктивную переменную:

Затем мы могли бы использовать Age и Gender_Dummy в качестве переменных-предикторов в регрессионной модели.

Пример 2. Создание фиктивной переменной с несколькими значениями

Предположим, у нас есть следующий набор данных, и мы хотели бы использовать семейное положение и возраст для прогнозирования дохода :

Чтобы использовать семейное положение в качестве предиктора в регрессионной модели, мы должны преобразовать его в фиктивную переменную.

Поскольку в настоящее время это категориальная переменная, которая может принимать три разных значения («Холост», «Женат» или «Разведен»), нам нужно создать k -1 = 3-1 = 2 фиктивных переменных.

Чтобы создать эту фиктивную переменную, мы можем позволить «Single» быть нашим базовым значением, поскольку оно встречается чаще всего. Таким образом, вот как мы можем преобразовать семейное положение в фиктивные переменные:

Затем мы могли бы использовать Age , Married и Divorced в качестве переменных-предикторов в регрессионной модели.

Как интерпретировать вывод регрессии с фиктивными переменными

Предположим, мы подгоняем модель множественной линейной регрессии , используя набор данных из предыдущего примера, с Age , Married и Divorced в качестве переменных-предикторов и Income в качестве переменной ответа.

Вот результат регрессии:

Подогнанная линия регрессии определяется как:

Доход = 14 276,21 + 1 471,67*(возраст) + 2 479,75*(замужем) – 8 397,40*(разведен)

Мы можем использовать это уравнение, чтобы найти предполагаемый доход для человека в зависимости от его возраста и семейного положения. Например, доход 35-летнего человека, состоящего в браке, оценивается в 68 264 доллара США :

Доход = 14 276,21 + 1 471,67 * (35) + 2 479,75 * (1) - 8 397,40 * (0) = 68 264 доллара США.

Вот как интерпретировать коэффициенты регрессии из таблицы:

  • Пересечение: Пересечение представляет собой средний доход одного человека в возрасте 0 лет. Очевидно, что вам не может быть ноль лет, поэтому нет смысла интерпретировать перехват сам по себе в этой конкретной регрессионной модели.
  • Возраст: каждый год увеличения возраста связан со средним увеличением дохода на 1471,67 доллара. Поскольку p-значение (0,00) меньше 0,05, возраст является статистически значимым предиктором дохода.
  • Женат: женатый человек в среднем зарабатывает на 2479,75 долларов больше, чем одинокий человек. Поскольку p-значение (0,80) не менее 0,05, эта разница не является статистически значимой.
  • Разведен: разведенный человек в среднем зарабатывает на 8 397,40 долларов меньше, чем одинокий человек. Поскольку p-значение (0,53) не менее 0,05, эта разница не является статистически значимой.

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

Дополнительные ресурсы

Качественные и количественные переменные
Ловушка фиктивных переменных
Как читать и интерпретировать таблицу регрессии
Объяснение P-значений и статистической значимости