Для линейного моделирования категориальными предикторами должны быть факторы или символы?

#r #linear-regression

#r #линейная регрессия

Вопрос:

В моем фрейме данных у меня есть несколько взаимоисключающих категориальных предикторов. Я превратил их в символьные векторы (т.е. Машины типа A, B, C ….). Будет ли это работать для линейного моделирования?

Комментарии:

1. Да, это сработает. Функции линейного моделирования R автоматически принудят их к факторам. В help('lm') перейдите по ссылке model.matrix , чтобы прочитать в разделе Подробности «Любые символьные переменные принудительно привязаны к факторам. »

2. спасибо, но я так понимаю. Когда я создавал DF, я вручную преобразовал их в символы. Вы хотите сказать, что когда я запускаю LM, те же самые элементы, которые были преобразованы вручную в символы, затем преобразуются обратно в факторы для запуска LM? Если да, автоматически ли предполагается, что они имеют упорядоченные уровни?

3. Я думаю, вы можете попробовать is.ordered(df $variable), чтобы узнать, упорядочен он или нет. Должно дать вам либо TRUE, либо FALSE

4. Если они являются символьными переменными, они будут преобразованы в коэффициенты с помощью model.matrix кода, но они по-прежнему будут символами в наборе данных. Что касается упорядоченных уровней, факторы внутренне представлены в виде последовательных целых чисел, начинающихся с 1. ?ordered() факторы — это совсем другое дело. Я не знаю, отвечает ли это на вопрос. Можете ли вы привести (небольшой) пример данных?