2011-07-29 116 views
4

邏輯迴歸SAS可以選擇使用「降序」選項來模擬1而不是0。 R中有沒有什麼方法可以做同樣的事情?Logistic迴歸中的排序

我正在使用的代碼如下:

glm(y~x1+x2+x3, family=binomial(link="logit"), na.action=na.pass) 

問候, 阿里

回答

8

的選擇是完全一樣的造型1-y,並且將返回相同的係數,但具有不同的符號。因此,無論您在模型中把1-y,或者你只是反轉的係數:

Data <- data.frame(
    y = rbinom(100,1,0.5), 
    x1 = rnorm(100), 
    x2 = rnorm(100), 
    x3 = rnorm(100) 
) 

mod1 <- glm(y~x1+x2+x3, family=binomial(link="logit"), 
      na.action=na.pass,data=Data) 

mod2 <- glm((1-y)~x1+x2+x3, family=binomial(link="logit"), 
      na.action=na.pass,data=Data) 

> all.equal(coef(mod2),-coef(mod1)) 
[1] TRUE 
+2

爲什麼'abs'必要嗎?不會是1還是0? –

+0

@Ben oops ...來自複製過快(使用'abs(y-1)'的代碼片段,我將其更改爲'1-y',但忘記刪除'abs()')。 Thx爲趕上 –

+0

非常感謝Joris!答案太快:) – Beta