web-dev-qa-db-fra.com

Comment supprimer l'interception dans R

J'ai besoin de créer un modèle probit sans interception. Alors, comment puis-je supprimer l'interception d'un modèle probit dans R?

16
Kazo

Vous ne dites pas comment vous avez l'intention d'ajuster le modèle probit, mais s'il utilise la notation de formule de R pour décrire le modèle, vous pouvez alors fournir + 0 Ou - 1 dans le cadre de la formule pour supprimer l'ordonnée à l'origine:

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

ou

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

(les deux utilisant un pseudo code R bien sûr - remplacez votre fonction de modélisation et vos données/variables.)

S'il s'agit d'un modèle ajusté par glm() alors quelque chose comme:

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

devrait le faire (en substituant à nouveau dans vos données et les noms de variables selon le cas.)

34
Gavin Simpson

De plus, si vous avez un objet formule existant, foo, vous pouvez supprimer l'interception avec update comme ceci:

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