Как удалить перехват в R - программирование

Как удалить перехват в R

Мне нужно создать пробит-модель без перехвата. Итак, как я могу удалить перехват из пробит-модели в R?

4b9b3361

Ответ 1

Вы не говорите, как вы намереваетесь соответствовать модели пробита, но если для описания модели используется формула R-формулы, вы можете указать либо + 0, либо - 1 как часть формулы для подавления перехвата

mod <- foo(y ~ 0 + x1 + x2, data = bar)

или

mod <- foo(y ~ x1 + x2 - 1, data = bar)

(оба с использованием псевдо R-кода - замените вашу функцию моделирования и данные/переменные.)

Если это пример модели с помощью glm(), то что-то вроде:

mod <- glm(y ~ x1 + x2 - 1, data = bar, family = binomial(link = "probit"))

должен сделать это (опять же подставляя в свои данные и имена переменных соответственно).

Ответ 2

Кроме того, если у вас есть существующий объект формулы, foo, вы можете удалить перехват с помощью update следующим образом:

foo <- y ~ x1 + x2
bar <- update(foo, ~ . -1)
# bar == y ~ x1 + x2 - 1