if (FALSE) {
if(requireNamespace("recipes", quietly = TRUE) &&
requireNamespace("parsnip", quietly = TRUE) &&
requireNamespace("workflows", quietly = TRUE)
){
data(
vi_smol,
vi_predictors_numeric
)
# model formula
vi_formula <- collinear::model_formula(
df = vi_smol,
response = "vi_numeric",
predictors = vi_predictors_numeric
)
# recipe
vi_recipe <- recipes::recipe(
formula = vi_formula,
data = vi_smol
) |>
#multicollinearity filtering
collinear::step_collinear(
recipes::all_predictors(),
options = list(
max_cor = 0.7,
max_vif = 5,
f = collinear::f_numeric_glm
)
) |>
#normalization
recipes::step_normalize(
recipes::all_predictors()
)
# define linear regression model
vi_model <- parsnip::linear_reg() |>
parsnip::set_engine("lm")
# create and fit workflow
vi_workflow <- workflows::workflow() |>
workflows::add_recipe(vi_recipe) |>
workflows::add_model(vi_model) |>
workflows::fit(data = vi_smol)
vi_workflow
}
}
Run the code above in your browser using DataLab