Как создать фиктивную переменную в R с помощью команды ifelse () - PullRequest
0 голосов
/ 23 сентября 2018

Я пытаюсь создать фиктивную переменную для R. Дело в том, что в моем наборе данных типа ресторана есть много категориальных переменных.Среди них я хочу, чтобы веганские рестораны имели значение 1, а остальные - 0. Поэтому, когда я запускаю сводку регрессии, я получаю перехват, и b1 как reviews_number и b2 как веганские рестораны.Например, не веганский ресторан будет y = b0 + b1 (reviews_number), а веганский ресторан будет y = b0 + b1 (reviews_number) + b2 (Vegan).Подсказка - использовать команду ifelse (), но я не могу упростить коэффициенты до 3. Или же мне нужно создать значение для каждого типа ресторана соответственно ......

1 Ответ

0 голосов
/ 23 сентября 2018

Предполагая, что ваш фрейм данных называется df, вы можете создать фиктивную переменную (Vegan), используя:

df$Vegan <- ifelse(df$type == "Vegan", 1, 0) # where variable type is type of restaurants 

Однако вы должны отметить, что если type хранится как факторВы также можете получить коэффициент для каждого типа ресторанов (по сравнению с эталонным уровнем), используя y = b0 + b1 (reviews_number) + b2 (type) т.е. y~reviews+type, как указано @mlt.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...