Build regression model from a set of candidate predictor variables by removing predictors based on p values, in a stepwise manner until there is no variable left to remove any more.

ols_step_backward_p(model, ...)

# S3 method for default
ols_step_backward_p(model, prem = 0.3, progress = FALSE, details = FALSE, ...)

# S3 method for ols_step_backward_p
plot(x, model = NA, print_plot = TRUE, ...)

Arguments

model

An object of class lm; the model should include all candidate predictor variables.

...

Other inputs.

prem

p value; variables with p more than prem will be removed from the model.

progress

Logical; if TRUE, will display variable selection progress.

details

Logical; if TRUE, will print the regression result at each step.

x

An object of class ols_step_backward_p.

print_plot

logical; if TRUE, prints the plot else returns a plot object.

Value

ols_step_backward_p returns an object of class "ols_step_backward_p". An object of class "ols_step_backward_p" is a list containing the following components:

model

final model; an object of class lm

steps

total number of steps

removed

variables removed from the model

rsquare

coefficient of determination

aic

akaike information criteria

sbc

bayesian information criteria

sbic

sawa's bayesian information criteria

adjr

adjusted r-square

rmse

root mean square error

mallows_cp

mallow's Cp

indvar

predictors

Deprecated Function

ols_step_backward() has been deprecated. Instead use ols_step_backward_p().

References

Chatterjee, Samprit and Hadi, Ali. Regression Analysis by Example. 5th ed. N.p.: John Wiley & Sons, 2012. Print.

See also

Examples

# stepwise backward regression model <- lm(y ~ ., data = surgical) ols_step_backward_p(model)
#> #> #> Elimination Summary #> -------------------------------------------------------------------------- #> Variable Adj. #> Step Removed R-Square R-Square C(p) AIC RMSE #> -------------------------------------------------------------------------- #> 1 alc_mod 0.7818 0.7486 7.0141 734.4068 199.2637 #> 2 gender 0.7814 0.7535 5.0870 732.4942 197.2921 #> 3 age 0.7809 0.7581 3.1925 730.6204 195.4544 #> --------------------------------------------------------------------------
# stepwise backward regression plot model <- lm(y ~ ., data = surgical) k <- ols_step_backward_p(model) plot(k)
# final model k$model
#> #> Call: #> lm(formula = paste(response, "~", paste(preds, collapse = " + ")), #> data = l) #> #> Coefficients: #> (Intercept) bcs pindex enzyme_test liver_test alc_heavy #> -1178.330 59.864 8.924 9.748 58.064 317.848 #>