我需要在没有拦截的情况下创建一个probit模型。那么,如何从R?
中的概率模型中删除截距答案 0 :(得分:33)
您没有说 您打算如何适应probit模型,但如果它使用R的公式表示法来描述模型,那么您可以提供+ 0
或{{1作为抑制拦截的公式的一部分:
- 1
或
mod <- foo(y ~ 0 + x1 + x2, data = bar)
(当然都使用伪R代码 - 替换你的建模函数和数据/变量。)
如果这是mod <- foo(y ~ x1 + x2 - 1, data = bar)
拟合的模型,则为:
glm()
应该这样做(在适当的时候再次替换你的数据和变量名。)
答案 1 :(得分:12)
此外,如果您有一个现有的公式对象foo
,则可以使用update
删除截距:
foo <- y ~ x1 + x2
bar <- update(foo, ~ . -1)
# bar == y ~ x1 + x2 - 1