Get variable and value labels from ggeffects
-objects. Functions like
ggpredict()
or ggeffect()
save information on variable names and value
labels as additional attributes in the returned data frame. This is especially
helpful for labelled data (see sjlabelled), since these labels can be used
to set axis labels and titles.
Usage
get_title(x, case = NULL)
get_x_title(x, case = NULL)
get_y_title(x, case = NULL)
get_legend_title(x, case = NULL)
get_legend_labels(x, case = NULL)
get_x_labels(x, case = NULL)
get_complete_df(x, case = NULL)
Arguments
- x
An object of class
ggeffects
, as returned by any ggeffects-function; forget_complete_df()
, must be a list ofggeffects
-objects.- case
Desired target case. Labels will automatically converted into the specified character case. See
?sjlabelled::convert_case
for more details on this argument.
Value
The titles or labels as character string, or NULL
, if variables
had no labels; get_complete_df()
returns the input list x
as single data frame, where the grouping variable indicates the predicted values for each term.
Examples
if (require("sjmisc", quietly = TRUE) &&
require("ggplot2", quietly = TRUE) &&
require("effects", quietly = TRUE)) {
data(efc)
efc$c172code <- to_factor(efc$c172code)
fit <- lm(barthtot ~ c12hour + neg_c_7 + c161sex + c172code, data = efc)
mydf <- ggpredict(fit, terms = c("c12hour", "c161sex", "c172code"))
ggplot(mydf, aes(x = x, y = predicted, colour = group)) +
stat_smooth(method = "lm") +
facet_wrap(~facet, ncol = 2) +
labs(
x = get_x_title(mydf),
y = get_y_title(mydf),
colour = get_legend_title(mydf)
)
# adjusted predictions, a list of data frames (one data frame per term)
eff <- ggeffect(fit)
eff
get_complete_df(eff)
# adjusted predictions for education only, and get x-axis-labels
mydat <- eff[["c172code"]]
ggplot(mydat, aes(x = x, y = predicted, group = group)) +
stat_summary(fun = sum, geom = "line") +
scale_x_discrete(labels = get_x_labels(mydat))
}
#> Install package "strengejacke" from GitHub (`devtools::install_github("strengejacke/strengejacke")`) to load all sj-packages at once!
#> lattice theme set by effectsTheme()
#> See ?effectsTheme for details.