Stepwise regression using p-values to drop variables with nonsignificant p-values

后端 未结 6 996
感动是毒
感动是毒 2020-11-29 16:46

I want to perform a stepwise linear Regression using p-values as a selection criterion, e.g.: at each step dropping variables that have the

6条回答
  •  暗喜
    暗喜 (楼主)
    2020-11-29 17:40

    Here is an example. Start with the most complicated model: this includes interactions between all three explanatory variables.

    model1 <-lm (ozone~temp*wind*rad)
    summary(model1)
    
    Coefficients:
    Estimate Std.Error t value Pr(>t)
    (Intercept) 5.683e+02 2.073e+02 2.741 0.00725 **
    temp          -1.076e+01 4.303e+00 -2.501 0.01401 *
    wind          -3.237e+01 1.173e+01 -2.760 0.00687 **
    rad           -3.117e-01 5.585e-01 -0.558 0.57799
    temp:wind      2.377e-01 1.367e-01 1.739 0.08519   
    temp:rad       8.402e-03 7.512e-03 1.119 0.26602
    wind:rad       2.054e-02 4.892e-02 0.420 0.47552
    temp:wind:rad -4.324e-04 6.595e-04 -0.656 0.51358
    

    The three-way interaction is clearly not significant. This is how you remove it, to begin the process of model simplification:

    model2 <- update(model1,~. - temp:wind:rad)
    summary(model2)
    

    Depending on the results, you can continue simplifying your model:

    model3 <- update(model2,~. - temp:rad)
    summary(model3)
    ...
    

    Alternatively you can use the automatic model simplification function step, to see how well it does:

    model_step <- step(model1)
    

提交回复
热议问题