2013-01-08 49 views
14

我需要創建一個沒有攔截的probit模型。那麼,如何從R中的probit模型中刪除截距?如何刪除R中的截距

+3

請參閱'?公式'。 –

+3

只需在公式中加上'-1',如:glm(y〜x1 + x2 - 1,family = binomial(link =「probit」),data = yourdata)'這將估計一個沒有截距的probit模型。 –

回答

27

你不說如何你正打算以適應概率模型,但如果使用的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")) 

應該這樣做(在您的數據和變量名酌情再次替換。)

+1

使用+ 0還是-1有區別嗎? –

+1

@NiekdeKlein不,沒有區別,我知道二 –

11

此外,如果您有現成的公式對象,foo,可以這樣刪除update的截取:

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