Regression

對變量進行分類會將其從不重要變為重要

  • March 19, 2019

我有一個數值變量,結果在多元邏輯回歸模型中並不顯著。但是,當我將其分類時,它突然變得很重要。這對我來說非常違反直覺:在對變量進行分類時,我們會放棄一些信息。

怎麼會這樣?

一種可能的解釋是您的結果與預測變量之間的關係存在非線性。

這是一個小例子。我們使用一致的預測器 $ [-1,1] $ . 然而,結果不是線性地取決於預測變量,而是取決於預測變量的平方:兩者都更可能為真 $ x\approx-1 $ 和 $ x\approx 1 $ , 但不太可能 $ x\approx 0 $ . 在這種情況下,線性模型將變得無關緊要,但將預測變量切割成區間使其變得重要。

> set.seed(1)
> nn <- 1e3
> xx <- runif(nn,-1,1)
> yy <- runif(nn)<1/(1+exp(-xx^2))
> 
> library(lmtest)
> 
> model_0 <- glm(yy~1,family="binomial")
> model_1 <- glm(yy~xx,family="binomial")
> lrtest(model_1,model_0)
Likelihood ratio test

Model 1: yy ~ xx
Model 2: yy ~ 1
 #Df  LogLik Df  Chisq Pr(>Chisq)
1   2 -676.72                     
2   1 -677.22 -1 0.9914     0.3194
> 
> xx_cut <- cut(xx,c(-1,-0.3,0.3,1))
> model_2 <- glm(yy~xx_cut,family="binomial")
> lrtest(model_2,model_0)
Likelihood ratio test

Model 1: yy ~ xx_cut
Model 2: yy ~ 1
 #Df  LogLik Df  Chisq Pr(>Chisq)  
1   3 -673.65                       
2   1 -677.22 -2 7.1362    0.02821 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

然而,這並不意味著離散化預測變量是最好的方法。(幾乎從來沒有。)使用建模非線性要好得多樣條或類似的。

引用自:https://stats.stackexchange.com/questions/398273

comments powered by Disqus