params <- list(EVAL = FALSE) ## ----set-options, echo = FALSE------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ knitr::opts_chunk$set( collapse = TRUE, comment = "#>", message = FALSE, dev = "png", fig.width = 7, fig.height = 3.5, warning = FALSE, eval = TRUE # eval = if (isTRUE(exists("params"))) params$EVAL else FALSE ) options(width = 800, tibble.width = Inf) if (!requireNamespace("sjmisc", quietly = TRUE) || !requireNamespace("splines", quietly = TRUE) || !requireNamespace("ggeffects", quietly = TRUE) || !requireNamespace("effects", quietly = TRUE) || !requireNamespace("ggplot2", quietly = TRUE) || !requireNamespace("haven", quietly = TRUE) || !requireNamespace("sjlabelled", quietly = TRUE)) { knitr::opts_chunk$set(eval = FALSE) } ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- library(sjPlot) library(ggplot2) data(efc) theme_set(theme_sjplot()) fit <- lm(barthtot ~ c12hour + neg_c_7 + c161sex + c172code, data = efc) plot_model(fit, type = "pred", terms = "c12hour") ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- plot_model(fit, type = "pred", terms = c("c12hour", "c172code")) ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- plot_model(fit, type = "pred", terms = c("c12hour", "c172code", "c161sex")) ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- plot_model(fit, type = "pred", terms = c("c12hour [30, 50, 80]", "c172code [1,3]")) ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- data(mtcars) mpg_model <- lm(mpg ~ log(hp), data = mtcars) # x-values and predictions based on the log(hp)-values plot_model(mpg_model, type = "pred", terms = "hp") # x-values and predictions based on hp-values from 50 to 150 plot_model(mpg_model, type = "pred", terms = "hp [50:150]") ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- # x-values and predictions based on exponentiated hp-values plot_model(mpg_model, type = "pred", terms = "hp [exp]") ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- library(splines) data(women) fm1 <- lm(weight ~ bs(height, df = 5), data = women) plot_model(fm1, type = "pred", terms = "height") ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- data(efc) efc$c172code <- sjlabelled::as_factor(efc$c172code) fit <- lm(neg_c_7 ~ c12hour + c172code, data = efc) # reference category is used for "c172code", i.e. c172code # used the first level as value for predictions plot_model(fit, type = "pred", terms = "c12hour") ## ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- # proportion is used for "c172code", i.e. it is set to # mean(sjlabelled::as_numeric(efc$c172code), na.rm = T), # which is about 1.9715 plot_model(fit, type = "eff", terms = "c12hour")