ggeffects 2.3.0
CRAN release: 2025-06-13
-
engine = "marginaleffects"was removed fromtest_predictions(). Full support for the {marginaleffects} package is now available in the {modelbased} package from the easystats-projects. Consequently, thejohnson_neyman()function was also removed. This decision was mainly to reduce maintainance burden. For marginal means, contrasts and comparisons, as well as marginal effects (slopes), the ggeffects package will be superseded by the modelbased package. For predictions, simulated responses, or emmeans-support, support in ggeffects will be continued in the future, however, almost all functionality is or will be available in the modelbased package, too.
ggeffects 2.2.0
CRAN release: 2025-02-05
Major changes
- The functions
test_predictions()andjonhson_neyman()have been largely revised, due to breaking changes in the marginaleffects package. The two functions will now internally callmodelbased::estimate_contrasts()andmodelbased::estimate_slopes(), to reduce maintanance load. Thus, some features have changed or are probably no longer / not yet available.
ggeffects 2.1.0
CRAN release: 2025-01-20
Changes
The
termsargument can now include up to five focal terms (formerly: four). Accordingly, theplot()method was revised. For four focal terms, a facet grid is used to plot all relevant panels. For five focal terms, multiple plots with facet grids are arranged using the patchwork package.values_at()gains a new"threenum"option.The
testargument istest_predictions()can now also be a formula to calculate consecutive contrasts, contrasts against the reference level or against the “average” factor level.
ggeffects 2.0.0
CRAN release: 2024-11-27
Breaking changes
The way how
type = "random"works has been revised.type = "random"no longer returns predictions intervals. Instead, useinterval = "prediction".type = "random"is now mainly responsible for unit-level predictions in mixed models, as opposed totype = "fixed", which should be used for population-level predictions. The separation fromtype = "random"and theintervalargument makes the handling for mixed models easier, more intuitive and consistent. Accordingly, the vignette regarding the introduction into mixed models with ggeffects has been largely revised.The
vcov_funandvcov_typeargument were removed and are now replaced by the singlevcovargument, to be in line with the handling of heteroscedasticity-consistent standard errors in other packages (mainly: easystats eco-system).The deprecated arguments for
ggpredict(),vcov(),ggeffect()andggemmeans()have been removed.The deprecated arguments for the
plot()method have been removed.Options
type = "random"andtype = "zi_random"are not longer available forggemmeans(). These were only responsible to set prediction intervals, which can be done withinterval = "prediction"now.
Changes
Added a
get_preditions()method, which can be used to implement own S3-classes to add support for new models to ggeffects. There is a corresponding vignette, too.The
plot()method gets adot_shapeargument, to change the shape of data points whenshow_data = TRUE.test_predictionsgains atest_argsargument, to optionally pass further options totestfor emmeans engine/options.vcov()returns a more informative warning, when the variance-covariance matrix could not be extracted due to problems in creating the model matrix (which prevents confidence intervals from being calculated).Added Okabe-Ito color scale to the available color ggeffects-palettes.
For models of class
survreg, argumenttypecan also be"quantile".
Bug fixes
Fixed issue with argument
conditionforggaverage().Fixed issues with missing confidence intervals for objects of class
averaging.
ggeffects 1.7.2
CRAN release: 2024-10-13
Breaking changes
The deprecated argument
ppdwas removed.Some of the deprecated arguments in
plot()were removed.Pooling functions now use the model’s degrees of freedom to calculate the critical values for the confidence intervals.
Changes
test = "slope"(ortest = "trend") are aliases intest_predictions()fortest = NULLwith numeric predictors.predict_response()(andggpredict(),ggemmeans()andggeffect()) get an argumentbias_correction, to correct for bias when back-transforming predictions for non-Gaussian mixed models.
ggeffects 1.7.1
CRAN release: 2024-09-01
ggeffects 1.7.0
CRAN release: 2024-06-20
Breaking
- The deprecated argument
ci.lvlintest_predictions()was removed.
General
ggpredict()now supports models of classglmgee(package glmtoolbox).ggemmeans()gains argumentsvcov_fun,vcov_typeandvcov_argsto specify the variance-covariance matrix for the marginal means, similar to what is already available inggpredict()andggaverage().When
test = "contrast", theengineis automatically set to"emmeans"intest_predictions().ggaverage()(orpredict_response(..., margin = "empirical")) now also supports followingtypeoptions for zero-inflated models:"zi_prob","zero_inflated"and"fixed".Support for zero-inflated models was massively improved in
test_predictions(), which, for instance, now also supportsscale = "zprob"to calculate contrasts for the zero-inflation probability for zero-inflated models from glmmTMB or pscl. Furthermore, when predictions for zero-inflation probabilities were calculated usingpr <- predict_response(..., type = "zi_prob"), corresponding contrasts will be calculated withtest_predictions(pr)automatically. Additionally, other types for models with zero-inflation component ("zero_inflated","fixed") are supported as well.ggeffect()now warns the user about arguments that are supported byggpredict()orggemmeans(), but not by this function (e.g.,vcov_fun).Improved accuracy of standard errors for
test_predictions(..., engine = "ggeffects").The
termsargument now also accepts the shortcut"percentile"(plus numeric value) to select a range of percentiles for continuous variables, e.g.terms = "x [percentile90]"to select a range of the 90% percentile.
Bug fixes
Fixed issue with brms models with monotonic effects in formula (
mo()).Fixed issue in
vcov()forggeffectsobjects, which could occur in rare situations when some of the predictors were character vectors.Fixed issue with calculation of standard errors when one of the focal term was a character vector.
Fixed issue in
plot()method withshow_data = TRUE, where in certain situations the raw data points were not colored when groups were present.Fixed issue in
plot()with too many data points when collapsing random effects groups.
ggeffects 1.6.0
CRAN release: 2024-05-18
General
ggpredict()now works for models of classclm2from package ordinal, however, confidence intervals are not yet supported for these models.ggeffect()now passes thelatentargument for models with ordinal outcome down toeffects::Effect(), to plot effects for ordinal models on the latent scale.When argument
testintest_predictions()is"interaction","consecutive", or a data frame, emmeans is automatically used as backend, as this is the relevant package that supports these argument types.format()(and hence,print()) fortest_predictions()gains acombine_levelsargument, to combine levels of the focal term in the output table.The
engineargument intest_predictions()can now also be"ggeffects". However, this is currently work-in-progress and offers muss less options as the default engine,"marginaleffects". It can be faster in some cases, though, and works for comparing predicted random effects in mixed models.test_predictions()now automatically falls back to engines"emmeans"or"ggeffects"if the marginaleffects (or emmeans) package is not installed.predict_response(),test_predictions()andggpredict()will warn the user when all focal terms are only included as random effects in the model and no appropriatetypeormarginis specified. This is to avoid meaningless results.plot()gets ann_rowsargument, to define the number of rows for the panel alignment. This is useful when the number of facets is large and the default alignment is not optimal.The
ppdargument for Bayesian models will be superseded by theintervalargument, i.e.ppd = TRUEis equivalent tointerval = "prediction"(andppd = FALSEis equivalent tointerval = "confidence").When
back_transform = FALSE, and model has a transformed response variable, theplot()method forggeffectsobjects now rescales the raw data points. This ensures that the raw data points are plotted on the same scale as the predicted values whenshow_data = TRUE.Minor revisions of documentation and vignettes, to improve readability and clarity.
Several arguments have been deprecated and replaced by new argument names. A warning is printed when deprecated arguments are used. The deprecated arguments will be removed in a future release.
Bug fixes
Fixed issue in
print()forggeffect()and models with ordinal outcome, where one column was too much in the output.Fixed issue in
test_predictions()with wrong order of term labels when a focal term was a character vector.Fixed issue in
ggpredict()withwbmmodels from package panelr.Fixed issue in
ggemmeans()forglmmTMBmodels with zero-inflation, whentermsincluded variables that were specified in the conditional, but not in the zero-inflation model formula.Fixed issue in
ggpredict()for Stan models (from packages rstanarm and brms) where theci_levelargument was not correctly recognized.Fixed CRAN check issues due to latest marginaleffects update.
ggeffects 1.5.2
CRAN release: 2024-04-15
General
ggemmeans()(and hence,predict_response(..., margin = "marginalmeans"))now supportstype = "zi_prob"for zero-inflated models from package glmmTMB, i.e. can now predict the zero-inflation probability.test_predictions()andggaverage()were updated to work with the latest release of the marginaleffects package. That release fixed issues with inaccurate standard errors for glmmTMB models.test_predictions()gains amarginargument, to indicate how to marginalize over non-focal terms. This ensures that estimates of pairwise comparisons are in line with estimates of predictions.test_predictions()gains anengineargument, to indicate which package to use to compute pairwise comparisons or contrasts. By default, the marginaleffects package is used, but you can also use the emmeans package.
Bug fixes
- Fixed issue in
ggeffect()when representative values for a focal term included a zero, e.g.terms = "focal [0,3,5]".
ggeffects 1.5.1
CRAN release: 2024-03-26
General
Overhaul of the documentation (again), to provide more clarity about the terminology “adjusted predictions”, “marginal means” and “marginal effects”, and how to calculate each of these quantities using the ggeffects package.
print_html()methods were updated to work with the latest release of tinytable.New
print_md()method, to print the output as markdown table. This is useful inside RMarkdown or Quarto documents, where the output can be directly included.
ggeffects 1.5.0
CRAN release: 2024-02-24
New functions
-
predict_response()as “generic” high-level function, which is a replacement forggpredict(),ggemmeans()andggaverage(). The new function is more clear about how the function marginalizes over non-focal terms. Themarginargument can be used to specify how to marginalize over non-focal terms, i.e. which function internally is used to compute the marginal effects.
General
The documentation was revised, to provide more clarity about what the package functions do and how to decide, which function or method to calculate marginal effects is the most appropriate.
Improved calculation of prediction intervals for Poisson regression models.
Improved handling of the
vcov_funargument. This argument now accepts an estimation type as string, e.g.vcov_fun = "HC0", which is then used to compute the variance-covariance matrix. Thus, it is no longer necessary to define bothvcov_funandvcov_type, if the variance-covariance matrix is covered by one of the pre-defined estimation types. See?ggpredictfor details.hypothesis_test()now also accepts thevcov_funargument, and not onlyvcov. This ensures consistency with thevcov_funargument inggpredict(). Furthermore, the information about the type of variance-covariance matrix is saved to the ggeffects object returned byggpredict(),predict_response()etc., and if this information is available, it is automatically used inhypothesis_test()when a ggeffects object is passed to the function.
Bug fixes
Fixed bug in wrong order of printed (sub-)tables for predictions.
Fixed wrong table column name for confidence interval columns for other confidence levels than the default 95% in
print()forggeffectsobjects.Fixed issue with
ggpredict()for models of classfixestwhen the cluster variable was numeric.
ggeffects 1.4.0
CRAN release: 2024-02-05
Breaking Changes
- The
print()method has been revised. Aformat()method was added, which allows to format the output ofggpredict()(andggeffect()etc.) for printing. The refactoring of theprint()method makes the code base easier to maintain and it is easier to enhance the print-functionality. Now it is possible to create HTML tables as well, usingprint_html(). The style of the output has also slightly changed. By default, confidence intervals are no longer enclosed in parentheses. You can change this behaviour by passing theci_bracketsargument toprint()(see examples), or permanently define custom parentheses or brackets with, e.g.,options(ggeffects_ci_brackets = c("[", "]")). Additionally, there are new arguments to further control the output of the tables:collapse_cican be used to collapse confidence intervals into a single column together with the predicted values.collapse_tablescan be used to collapse multiple tables into a single table (only applies when there is more than one focal term). Again, these settings can be permanently defined via options (see?print.ggeffectsfor details).
New functions
-
print_html(), to print the output as HTML table. This method is available for objects fromggpredict()(and alike) as well ashypothesis_test().
Bug fixes
- Fixed issue with
ggpredict()for models of classvglmwith multivariate responses.
ggeffects 1.3.4
CRAN release: 2023-12-18
General
ggpredict()now supports models of classrqsfrom package quantreg.Fixed issues to be compatible with forthcoming update of emmeans.
ggeffects 1.3.3
CRAN release: 2023-12-15
New functions
ggaverage(), to compute average predicted values. This function is based onmarginaleffects::avg_predictons().pool_comparisons(), to pool results from multiple calls tohypothesis_test(), e.g. with imputed data sets.
General
Support for
sdmTMB(sdmTMB) models.Improved support for the logistf package, including models
flic()andflac().Confidence intervals for predictions from
merModmodels (package lme4) now use the standard errors returned bypredict(..., se.fit = TRUE). This should not affect numerical results, but can be more robust for certain edge cases. Note that standard errors are only based onpredict()whentpye = "fixed". Fortype = "random", standard errors are still based on the model’s variance-covariance matrix, taking uncertainty from random effects into account.hypothesis_test()now suppports models from package parsnip.johnson_neyman()gains ap_adjustargument, to adjust p-values for multiple comparisons. Currently, onlyp_adjust = "esarey"(resp.p_adjust = "es") andp_adjust = "fdr"(resp.p_adjust = "bh") are supported.
Bug fixes
ggpredict()now computes appropriate predicted probabilites for models of classrms::lrm()with ordinal outcome.Fixed issue in
ggpredict()fortype = "random"when sampling from random effects levels, where the levels were numeric characters with a pattern like"001","002", etc.Fixed minor issue in
plot.ggalleffects()....arguments inggpredict()are now passed down to thepredict()method formgcv::gam()models.
ggeffects 1.3.2
CRAN release: 2023-10-17
Breaking changes
- Some function arguments will be renamed, to achieve consistency across the package and across other packages where I’m involved in the development. This will be a soft transition, i.e. the old argument names will still work for some package updates.
Changes
The
typicalargument now supports a mix of functions for different variable types at which numeric or categorical covariates (non-focal terms) are held constant.Clarification of how the
re.formargument is set when usingtype = "random"resp.type = "fixed"inggpredict().hypothesis_test()now returns the standard error of contrasts or pairwise comparisons as attributestandard_error. This can be used to compute the test-statistic, if required. In forthcoming updates, there will be methods forinsight::get_statistic()andparameters::model_parameters()to include standard errors and test-statistics in the output.test_predictions()was added as an alias forhypothesis_test().
Bug fixes
- Fixed issue in
hypothesis_test()for mixed models, which sometimes failed when random effects group variables were numeric, and not factors.
ggeffects 1.3.1
CRAN release: 2023-09-05
New functions
-
johnson_neyman(), to create Johnson-Neyman intervals and plots fromggeffectsobjects.
Changes
Better automatic handling of offset-terms, both for predictions and generating plots with raw data. When the model formula contains an offset-term, and the offset term is fixed at a specific value, the response variable is now automatically transformed back to the original scale, and the offset-term is added to the predicted values. A warning is printed when model contains transformed offset-terms that are not fixed, e.g. via the
conditionargument.ggeffect()now supportsnestedLogitmodels.
Bug fixes
Fixed issue in
hypothesis_test(), where thebyargument did not work together with thecollapse_levelsargument.Fixed issue in
plot()method when adding raw data points for data frame that had now row names.
ggeffects 1.3.0
CRAN release: 2023-08-21
Breaking
- To avoid confusion when adding raw data or residuals to plots, the
jitterargument that is used to add some noice to data points to avoid overlapping now defaults toNULL. Formerly, a small jitter was added by default, leading to confusion when data points did not match the original data.
Changes
The
plot()method gets alabel.dataargument, to add row names to data points whenadd.data = TRUE.tibblesare always converted into data frames, to avoid issues.hypothesis_test()gains abyargument, to specify a variable that is used to group the comparisons or contrasts. This is useful for models with interaction terms.
Bug fixes
Plotting residuals did not work when model object passed to
ggpredict()were inside a list, or when called from inside functions (scoping issues).Fixed issue where plotting raw data (i.e.
plot(..., add.data = TRUE)) did not work when there were missing data in weight variables (i.e. when the regression model used weights).Fixes issue in
plot()when no term was specified in the call toggpredict().Fixed issues with robust estimation for models of package pscl.
Fixed issues introduced by breaking changes in marginaleffects.
ggeffects 1.2.3
CRAN release: 2023-06-11
General
Support for
nestedLogit(nestedLogit) models.hyothesis_test()gains ascaleargument, to explicitely modulate the scale of the contrasts or comparisons (e.g."response"or"link", or"exp"to return transformed contrasts/comparisons).hyothesis_test()now includes the response level for models with ordinal outcomes (and alike).When
ggpredict()is used inside functions and a name for a vector variable (passed as argument to that function) intermsis used, the variable is now correctly recognized.Partial residuals (when
plot(..., residuals = TRUE)) now supports more linear (mixed) models, including models from package lme (such asgls()orlme()).For mixed models,
type = "random"used to calculate prediction intervals that always accounted for random effects variances, leading to larger intervals. Usinginterval = "confidence"together withtype = "random"now allows to calculate “usual” confidence intervals for random effects. This is usefule for predictions at specific group levels of random effects (when focal terms are only fixed effects, usetype = "fixed"for regular confidence intervals).The
vcov.funargument can now also be a function that returns a variance-covariance matrix.The
verboseargument inggpredict()andhypothesis_test()now also toggle messages for the respectiveprint()methods.The
print()method forhypothesis_test()has been revised and now provides more details for possible transformation of the scale of comparisons and contrasts.The
print()method now shows all rows by default when the focal term is a factor. If rows are not shown in the output, a message is printed to inform the user about truncated output.A new vignette about using ggeffects in the context of an intersectional multilevel analysis of individual heterogeneity, using the MAIHDA framework.
ggeffects 1.2.2
CRAN release: 2023-05-04
General
-
Added a new
[.ggeffectsfunction, which allows to subsetggeffectsobjects in the same way as regular data frames, i.e. it is now possible to do:gge <- ggpredict(model, "x1") gge[c(1:2)] -
Using a name for a vector variable in
termsnow works from inside functions. E.g., you can now do:foo <- function(data) { fit <- lm(barthtot ~ c12hour + c172code, data = data) v <- c(20, 50, 70) ggpredict(fit, terms = "c12hour [v]") } foo(efc) The
colorsargument inplot()can now also be applied to single-colored plots.hyothesis_test()gains acollapse_levelargument, to collapse term labels that refer to the same levels into a singel unique level string.
Bug fixes
Fixed issue with misplaced residuals when x-axis was categorical and the factor levels were not in alphabetical order.
pool_predictions()now correctly handles models with transformed response variables (likelog(y)) and returns the correct back-transformed pooled predictions (and their confidence intervals).Fixed issue with wrong computation of confidence intervals for models of class
clmfrom package ordinal.Fixed failing tests due to changes in the logistf package, which now also supports emmeans. That means,
ggemmeans()now also works for models from package logistf.Fixed bug in
plot()when partial residuals were added (i.e.residuals = TRUE) andcollapse.groupwas provided (in case of mixed models).Fixed issue with on-the-fly created factors inside formulas, which were not correctly treated as factors in the
plot()method. This bug was related to recent changes ininsight::get_data().Fixed issue with wrong labels in
hyothesis_test()for comparisons with many rows, when betas starting with same digit were specified (e.g.test = "(b1-b13)=(b3-b15)").Fixed issue in
hyothesis_test()for mixed models when focal terms included factors with factor levels that contained a comma.Fixed issue with missing confidence intervals for mixed models when one of the variable names contains white space characters (e.g.
y ~ 'x a' + xb).
ggeffects 1.2.1
CRAN release: 2023-04-02
Changes to functions
hypothesis_test()gains anequivalenceargument, to compute tests of practical equivalence for contrasts and comparisons.The message whether contrasts or comparisons from
hypothesis_test()are on the link-scale is now printed below the table.Dot arguments (
...) inhypothesis_test()are now passed to the functions in marginaleffects, thereby allowing to use further options in functionsmarginaleffects::predictions(), liketransformetc.
Bug fixes
- Fixed issues in
hypothesis_test()for mixed models with one focal term only, and when this term was categorical.
ggeffects 1.2.0
CRAN release: 2023-02-24
Breaking
- Confidence intervals of adjusted predictions now take the model’s degrees of freedom into account, thereby leading to slightly larger intervals for models that do not have infinite degrees of freedom (like linear models with t-statistic).
New functions
hypothesis_test(), to compute contrasts and comparisons of predictions and test differences for statistical significance. Additionally, an accompanying vignette that explains the new function in detail is added.install_latest(), to install the latest official package version from CRAN, or the latest development version from r-universe.An
as.data.frame()method was added, which convertsggeffectsobjects returned byggpredict()into data frame, where standard column names are replaced by their related variable names.
General
Response values are now also back-transformed when these were transformed using
log2(),log10()orlog1p().The
termsargument can now also be a named list. Thus, instead ofterms = c("score [30,50,70]", "status [low, middle]")one could also writeterms = list(score = c(30,50,70), status = c("low", "middle")).
ggeffects 1.1.5
CRAN release: 2023-01-25
General
Minor changes to meet forthcoming update of insight.
ggpredict()orggemmeans()get averboseargument to suppress some messages and warnings when calling
ggeffects 1.1.4
CRAN release: 2022-10-23
General
- Reduced package dependencies. Packages sjlabelled and MASS were moved from imports to suggests. ggeffects is now a very lightweight package to compute adjusted predictions and estimated marginal means.
Bug fixes
Fixed issue with wrong standard errors for predicting random effect groups for more multiple levels.
Fixed issue in
ggemmeans(), which did not correctly averaged over character vectors when these were hold constant.Fixed bug for models of class
lmewhentype = "re"was requested.
ggeffects 1.1.1
CRAN release: 2021-07-29
ggeffects 1.1.0
CRAN release: 2021-04-30
Breaking Changes
Prediction intervals (where possible, or when
type = "random"), are now always based on sigma^2 (i.e.insight::get_sigma(model)^2). This is in line withinterval = "prediction"for lm, or for predictions based on simulations (whentype = "simulate").print()now uses the name of the focal variable as column name (instead) of"x").
New function
-
collapse_by_group(), to generate a data frame where the response value of the raw data is averaged over the levels of a (random effect) grouping factor.
General
A new vignette was added related to the definition and meaning of “marginal effects” and “adjusted predictions”. To be more strict and to avoid confusion with the term “marginal effect”, which meaning may vary across fields, either “marginal effects” was replaced by “adjusted predictions”, or “adjusted predictions” was added as term throughout the package’s documentation and vignettes.
Allow confidence intervals when predictions are conditioned on random effect groups (i.e. when
type = "random"andtermsincludes a random effect group factor).Predicted response values based on
simulate()(i.e. whentype = "simulate") is now possible for more model classes (see?ggpredict).ggpredict()now computes confidence intervals for some edge cases where it previously failed (e.g. some models that do not compute standard errors for predictions, and where a factor was included in the model and not the focal term).plot()gains acollapse.groupargument, which - in conjunction withadd.data- averages (“collapses”) the raw data by the levels of the group factors (random effects).data_grid()was added as more common alias fornew_data().
Bug fixes
ggpredict()andplot()for survival-models now always start with time = 1.Fixed issue in
print()for survival-models.Fixed issue with
type = "simulate"forglmmTMBmodels.Fixed issue with
gamlssmodels that hadrandom()function in the model formula.Fixed issue with incorrect back-transformation of predictions for
geeglmmodels.
ggeffects 1.0.2
CRAN release: 2021-03-17
Breaking changes
-
residuals.typeargument inplot()is deprecated. Always using"working"residuals.
General
pretty_range()andvalues_at()can now also be used as function factories.plot()gains alimit.rangeargument, to limit the range of the prediction bands to the range of the data.
ggeffects 1.0.1
CRAN release: 2020-12-14
General
- Fixed CRAN check issues.
- Added argument
intervaltoggemmeans(), to either compute confidence or prediction intervals.
ggeffects 1.0.0
CRAN release: 2020-11-29
New functions
-
pool_predictions(), to pool multipleggeffectsobjects. This can be used when predicted values or estimated marginal means are calculated for models fit to multiple imputed datasets.
General
- The function
residualize_over_grid()is now exported. - The back-transformation of the response-variable (if these were log- or square root-transformed in the model) now also works with square root-transformations and correctly handles
log1p()andlog(mu + x). - Since standard errors were on the link-scale and not back-transformed for non-Gaussian models, these are now no longer printed (to avoid confusion between standard errors on the link-scale and predictions and confidence intervals on the response-scale).
Bug fixes
- Fixed issue for mixed models when predictions should be conditioned on random effects variances (e.g.
type = "random"or"zi_random"), but random effects variances could not be calculated or were almost zero. - Fixed issue with confidence intervals for
multinommodels inggemmeans(). - Fixed issue in
ggemmeans()for models from nlme. - Fixed issue with
plot()for some models inggeffect(). - Fixed issue with computation of confidence intervals for zero-inflated models with offset-term.
ggeffects 0.16.0
CRAN release: 2020-09-13
Breaking changes
- Package insight since version 0.9.5 now returns the “raw” (untransformed, i.e. original) data that was used to fit the model also for log-transformed variables. Thus, exponentiation like using
terms = "predictor [exp]"is no longer necessary.
General
-
plot()now can also create partial residuals plots. There, argumentsresiduals,residuals.typeandresiduals.linewere added to add partial residuals, the type of residuals and a possible loess-fit regression line for the residual data.
Bug fixes
- The message for models with a back-transformation to the response scale (all non-Gaussian models), that standard errors are still on the link-scale, did not show up for models of class
glmsince some time. Should be fixed now. - Fixed issue with
ggpredict()andrlmerModsmodels when using factors as adjusted terms. - Fixed issue with brms-multi-response models.
ggeffects 0.15.1
CRAN release: 2020-07-27
Bug fixes
- Fixed issues due to latest rstanarm update.
- Fixed some issues around categorical/cumulative brms models when the outcome is numeric.
- Fixed bug with factor level ordering when plotting raw data from
ggeffect().
ggeffects 0.15.0
CRAN release: 2020-06-16
Changes to functions
-
ggpredict()gets a newtype-option,"zi.prob", to predict the zero-inflation probability (for models from pscl, glmmTMB and GLMMadaptive). - When model has log-transformed response variable and
add.data = TRUEinplot(), the raw data points are also transformed accordingly. -
plot()withadd.data = TRUEfirst adds the layer with raw data, then the points / lines for the marginal effects, so raw data points to not overlay the predicted values. - The
terms-argument now also accepts the name of a variable to define specific values. See vignette Marginal Effects at Specific Values.
ggeffects 0.14.2
CRAN release: 2020-03-14
General
- ggeffects now requires glmmTMB version 1.0.0 or higher.
- Added human-readable alias-options to the
type-argument.
Bug fixes
- Fixed issue when log-transformed predictors where held constant and their typical value was negative.
- Fixed issue when plotting raw data to a plot with categorical predictor in the x-axis, which had numeric factor levels that did not start at
1. - Fixed issues for model objects that used (log) transformed
offset()terms.
ggeffects 0.14.0
CRAN release: 2019-12-16
General
- Reduce package dependencies.
-
plot(rawdata = TRUE)now also works for objects fromggemmeans(). -
ggpredict()now computes confidence intervals for predictions fromgeeglmmodels. - For brmsfit models with
trials()as response variable,ggpredict()used to choose the median value of trials were the response was hold constant. Now, you can use thecondition-argument to hold the number of trials constant at different values. - Improve
print().
Bug fixes
- Fixed issue with
clmm-models, when group factor in random effects was numeric. - Raw data is no longer omitted in plots when grouping variable is continuous and added raw data doesn’t numerically match the grouping levels (e.g., mean +/- one standard deviation).
- Fix CRAN check issues due to latest geepack update.
ggeffects 0.13.0
CRAN release: 2019-11-08
New supported models
-
bracl,brmultinom(package brglm2) and models from packages bamlss and R2BayesX.
General
- Updated package dependencies.
-
plot()now uses dodge-position for raw data for categorical x-axis, to align raw data points with points and error bars geoms from predictions. - Updated and re-arranged internal color palette, especially to have a better behaviour when selecting colors from continuous palettes (see
show_pals()).
New functions
- Added a
vcov()function to calculate variance-covariance matrix for marginal effects.
Changes to Functions
-
ggemmeans()now also acceptstype = "re"andtype = "re.zi", to add random effects variances to prediction intervals for mixed models. - The ellipses-argument
...is now passed down to thepredict()-method for gamlss-objects, so predictions can be computed for sigma, nu and tau as well.
Bug fixes
- Fixed issue with wrong order of plot x-axis for
ggeffect(), when one term was a character vector.
ggeffects 0.12.0
CRAN release: 2019-09-03
Breaking Changes
- The use of
ggaverage()is discouraged, and so it was removed. - The name
rprs_values()is now deprecated, the function is namedvalues_at(), and its alias isrepresentative_values(). - The
x.as.factor-argument defaults toTRUE.
General
-
ggpredict()now supports cumulative link and ordinal vglm models from package VGAM. - More informative error message for clmm-models when
termsincluded random effects. -
add.datais an alias for therawdata-argument inplot(). -
ggpredict()andggemmeans()now also support predictions for gam models fromziplssfamily.
ggeffects 0.11.0
CRAN release: 2019-07-01
General
- Revised docs and vignettes - the use of the term average marginal effects was replaced by a less misleading wording, since the functions of ggeffects calculate marginal effects at the mean or at representative values, but not average marginal effects.
- Replace references to internal vignettes in docstrings to website-vignettes, so links on website are no longer broken.
-
values_at()is an alias forrprs_values().
Changes to functions
-
ggpredict()now supports prediction intervals for models from MCMCglmm. -
ggpredict()gets aback.transform-argument, to tranform predicted values from log-transformed responses back to their original scale (the default behaviour), or to allow predictions to remain on log-scale (new). -
ggpredict()andggemmeans()now can calculate marginal effects for specific values from up to three terms (i.e.termscan be of lenght four now). - The
ci.style-argument fromplot()now also applies to error bars for categorical variables on the x-axis.
ggeffects 0.10.0
CRAN release: 2019-05-13
General
- Better support, including confidence intervals, for some of the already supported model types.
- New package-vignette Logistic Mixed Effects Model with Interaction Term.
New supported models
-
gamlss,geeglm(package geepack),lmrobandglmrob(package robustbase),ols(package rms),rlmer(package robustlmm),rqandrqss(package quantreg),tobit(package AER),survreg(package survival)
Changes to functions
- The steps for specifying a range of values (e.g.
terms = "predictor [1:10]") can now be changed withby, e.g.terms = "predictor [1:10 by=.5]"(see also vignette Marginal Effects at Specific Values). - Robust standard errors for predictions (see argument
vcov.funinggpredict()) now also works for following model-objects:coxph,plm,polr(and probably alsolmeandgls, not tested yet). -
ggpredict()gets aninterval-argument, to compute prediction intervals instead of confidence intervals. -
plot.ggeffects()now allows different horizontal and vertical jittering forrawdatawhenjitteris a numeric vector of length two.
Bug fixes
- Models with
AsIs-conversion from division of two variables as dependent variable, e.g.I(amount/frequency), now should work. -
ggpredict()failed forMixMod-objects whenci.lvl=NA.
