Build regression model from a set of candidate predictor variables by entering predictors based on p values, in a stepwise manner until there is no variable left to enter any more.
ols_step_forward_p(model,...)## Default S3 method:ols_step_forward_p( model, p_val =0.3, include =NULL, exclude =NULL, hierarchical =FALSE, progress =FALSE, details =FALSE,...)## S3 method for class 'ols_step_forward_p'plot(x, model =NA, print_plot =TRUE, details =TRUE,...)
Arguments
model: An object of class lm; the model should include all candidate predictor variables.
...: Other arguments.
p_val: p value; variables with p value less than p_val will enter into the model
include: Character or numeric vector; variables to be included in selection process.
exclude: Character or numeric vector; variables to be excluded from selection process.
hierarchical: Logical; if TRUE, performs hierarchical selection.
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_forward_p.
print_plot: logical; if TRUE, prints the plot else returns a plot object.
Returns
ols_step_forward_p returns an object of class "ols_step_forward_p". An object of class "ols_step_forward_p" is a list containing the following components:
model: final model; an object of class lm
metrics: selection metrics
Examples
# stepwise forward regressionmodel <- lm(y ~ ., data = surgical)ols_step_forward_p(model)# stepwise forward regression plotmodel <- lm(y ~ ., data = surgical)k <- ols_step_forward_p(model)plot(k)# selection metricsk$metrics
# final modelk$model
# include or exclude variables# force variable to be included in selection processols_step_forward_p(model, include = c("age","alc_mod"))# use index of variable instead of nameols_step_forward_p(model, include = c(5,7))# force variable to be excluded from selection processols_step_forward_p(model, exclude = c("pindex"))# use index of variable instead of nameols_step_forward_p(model, exclude = c(2))# hierarchical selectionmodel <- lm(y ~ bcs + alc_heavy + pindex + enzyme_test, data = surgical)ols_step_forward_p(model,0.1, hierarchical =TRUE)# plotk <- ols_step_forward_p(model,0.1, hierarchical =TRUE)plot(k)
References
Chatterjee, Samprit and Hadi, Ali. Regression Analysis by Example. 5th ed. N.p.: John Wiley & Sons, 2012. Print.
Kutner, MH, Nachtscheim CJ, Neter J and Li W., 2004, Applied Linear Statistical Models (5th edition). Chicago, IL., McGraw Hill/Irwin.
See Also
Other forward selection procedures: ols_step_forward_adj_r2(), ols_step_forward_aic(), ols_step_forward_r2(), ols_step_forward_sbc(), ols_step_forward_sbic()