使用R中的glm函数建模零

时间:2015-03-22 10:06:04

标签: r glm logistic-regression

我正在尝试使用R中的glm函数构建逻辑回归模型。我的因变量是二项式,仅为0和1。这里0 - 不归,1-返回。

我想模拟Non-Return(0),但是默认情况下R的glm函数构建为1。就像在SAS中默认构建较低的值并且我们可以在proc logistic中使用降序属性来改变顺序,我们在glm中也有类似的东西吗?

我有一个选项可以通过在原始数据中将0更改为1反之亦然但不想更改原始数据来实现此目的。

请帮助我或指导我如何在R中做类似的事情。

提前致谢。

2 个答案:

答案 0 :(得分:2)

只需将1 - y指定为DV:

set.seed(42)
y <- sample(c(0, 1), 10, TRUE)
#[1] 1 1 0 1 1 1 1 0 1 1

fit <- glm(y ~ 1, family = binomial)
coef(fit)
# (Intercept) 
# 1.386294 
log(mean(y) / (1 - mean(y)))
#[1] 1.386294

1 - y
#[1] 0 0 1 0 0 0 0 1 0 0

fit1 <- glm(1 - y ~ 1, family = binomial)
coef(fit1)
#(Intercept) 
#-1.386294 
log(mean(1 - y) / (1 - mean(1 - y)))
#[1] -1.386294

答案 1 :(得分:0)

或者,您可以使用... transform暂时转换数据:

glm( data = transform( data.frame(y=0), y=y+1 ), ... )