Skip to content

Releases: easystats/modelbased

modelbased 0.11.1

12 May 09:20
9d99e9b
Compare
Choose a tag to compare

Changes

  • The comparison argument can now also be a custom function, or a matrix
    (e.g., to define contrasts).

  • The comparison argument can now also be "joint", to jointly test
    hypotheses (i.e. conducting a joint test) in factorial designs.

  • New vignette about user-defined contrasts and joint tests in
    estimate_contrasts().

modelbased 0.11.0

02 May 10:15
c8cb503
Compare
Choose a tag to compare

New functions

  • Added pool_slopes(), to pool results from estimate_slopes() applied to
    imputed data.

Breaking Changes

  • reshape_grouplevel() now takes the correct number of specified random effects
    groups into account when reshaping results.

Changes

  • In general, it is now possible to make estimate means, contrasts and slopes
    for distributional parameters for models from package brms using the
    predict argument.

  • estimate_grouplevel() gets arguments test, dispersion and diagnostic,
    that are internally passed to parameters::model_parameters(), but with
    different defaults.

  • estimate_prediction() and estimate_relation() now support Wiener-models
    (Drift Diffusion Models) from package brms.

  • estimate_prediction(), estimate_relation() and similar functions now
    include the Row column for models with ordinal or categorical response
    variables when the data argument was provided.

  • estimate_slopes() can now also calculate average marginal effects of a
    predictor, just for the trend of that predictor within a certain range of
    values.

  • estimate_slopes() gets a predict argument, to either select the scale
    of the estimates slopes, or to estimate slopes (marginal effects) for
    distributional parameters of brms models.

  • estimate_contrasts() gives an informative error message when arguments
    by and contrast have identical variables (which does not work).

  • Column names of predicted values for backend = "emmeans" has changed for
    models like logistic regression, or beta regression. Formerly, name was
    Mean, now it is Probability or Proportion, depending on the model.

  • Exposed iterations argument in estimate_prediction() and estimate_relation().

  • Option estimate = "average no longer prints information on averaged predictors
    in the footer, because strictly, the predictions are averaged over, and not
    the non-focal variables.

  • Better handling for models with offsets in estimate_means() and
    estimate_contrasts(). Informative messages are given when models include
    offset terms, and it is possible to fix the offset value using the offset
    argument. The offset argument is also available for estimate_relation(),
    estimate_prediction() and similar.

  • For consistency, estimate_slopes() now also uses the residual degrees of
    freedom by default (like estimate_means()) when calculating confidence
    intervals and p-values.

  • Minor improvements to the documentation.

Bug fixes

  • Fixed issues in estimate_grouplevel() for models from package rstanarm.

  • Fixed issues in calculating correct confidence intervals (and possibly p-values)
    for pooling functions pool_parameters() and pool_predictions().

  • Fixed issue in estimate_means() for multivariate response models from
    package brms.

  • Fixed issue with wrong y-axis label for plots from estimate_slopes().

  • Fixed issue with weights in estimate_relation().

  • Fixed issue in printed output for the statistic column, which should be z
    for the marginaleffects backend, when argument df = Inf.

modelbased 0.10.0

10 Mar 17:45
Compare
Choose a tag to compare

Breaking Changes

  • The deprecated function visualisation_matrix() has been removed. Use
    insight::get_datagrid() instead.

  • The "average" option for argument estimate was renamed into "typical".
    The former "average" option is still available, but now returns marginal
    means fully averaged across the sample.

Changes

  • The transform argument now also works for estimate_slopes() and for
    estimate_contrasts() with numeric focal terms.

  • estimate_contrasts() no longer calls estimate_slopes() for numeric focal
    terms when these are integers with only few values. In this case, it is assumed
    that contrasts of values ("levels") are desired, because integer variables with
    only two to five unique values are factor-alike.

  • estimate_contrasts: now supports optional standardized effect sizes, one of
    "none" (default), "emmeans", or "bootES" (#227, @rempsyc).

  • The predict() argument for estimate_means() gets an "inverse_link" option,
    to calculate predictions on the link-scale and back-transform them to the
    response scale after aggregation by groups.

  • estimate_means(), estimate_slopes() and estimate_contrasts() get a
    keep_iterations argument, to keep all posterior draws from Bayesian models
    added as columns to the output.

  • New functions pool_predictions() and pool_contrasts(), to deal with
    modelbased objects that were applied to imputed data sets. E.g., functions
    like estimate_means() can be run on several data sets where missing values
    were imputed, and the multiple results from estimate_means() can be pooled
    using pool_predictions().

  • The print() method is now explicitly documented and gets some new options
    to customize the output for tables.

  • estimate_grouplevel() gets a new option, type = "total", to return the
    sum of fixed and random effects (similar to what coef() returns for (Bayesian)
    mixed models).

  • New option "esarey" for the p_adjust argument. The "esarey" option is
    specifically for the case of Johnson-Neyman intervals, i.e. when calling
    estimate_slopes() with two numeric predictors in an interaction term.

  • print_html() and print_md() pass ... to format-methods (e.g. to
    insight::format_table()), to tweak the output.

  • The show_data argument in plot() is automatically set to FALSE when
    the models has a transformed response variable, but predictions were not
    back-transformed using the transform argument.

  • The plot() method gets a numeric_as_discrete argument, to decide whether
    numeric predictors should be treated as factor or continuous, based on the
    of unique values in numeric predictors.

  • Plots now use a probability scale for the y-axis for models whose response
    scale are probabilities (e.g., logistic regression).

  • Improved printing for estimate_contrasts() when one of the focal predictors
    was numeric.

Bug fixes

  • Fixed issue in the summary() method for estimate_slopes().

  • Fixed issues with multivariate response models.

  • Fixed issues with plotting ordinal or multinomial models.

  • Fixed issues with ci argument, which was ignored for Bayesian models.

  • Fixed issues with contrasting slopes when backend was "emmeans".

  • Fixed issues in estimate_contrasts() when filtering numeric values in by.

  • Fixed issues in estimate_grouplevel().

  • Fixed issue in estimate_slopes() for models from package lme4.

modelbased 0.9.0

05 Feb 13:13
3545cd1
Compare
Choose a tag to compare

Breaking Changes

  • The default package used for estimate_means(), estimate_slopes() and
    estimate_contrasts() is now marginaleffects. You can set your preferred
    package as backend using either the backend argument, or in general by setting
    options(modelbased_backend = "marginaleffects") or
    options(modelbased_backend = "emmeans").

  • Deprecated argument and function names have been removed.

  • Argument fixed has been removed, as you can fix predictor at certain values
    using the by argument.

  • Argument transform is no longer used to determine the scale of the predictions.
    Please use predict instead.

  • Argument transform is now used to (back-) transform predictions and confidence
    intervals.

  • Argument method in estimate_contrasts() was renamed into comparison.

  • All model_*() alias names have been removed. Use the related get_*()
    functions instead.

  • The show_data argument in plot() defaults to FALSE.

Major Changes

  • The "marginaleffects" backend is now fully implemented and no longer
    work-in-progress. You can set your preferred package as backend using
    either the backend argument, or in general by setting
    options(modelbased_backend = "marginaleffects") or
    options(modelbased_backend = "emmeans").

  • All estimate_*() functions get a predict argument, which can be used
    to modulate the type of transformation applied to the predictions (i.e. whether
    predictions should be on the response scale, link scale, etc.). It can also
    be used to predict auxiliary (distributional) parameters.

  • estimate_means() and estimate_contrasts() get a estimate argument,
    to specify how to estimate over non-focal terms. This results in slightly
    different predicted values, each approach answering a different question.

  • estimate_contrasts() gains a backend argument. This defaults to
    "marginaleffects", but can be set to "emmeans" to use features of that
    package to estimate contrasts and pairwise comparisons.

  • estimate_expectation() and related functions also get a by argument, as
    alternative to create a datagrid for the data argument.

  • Many functions get a verbose argument, to silence warnings and messages.

Bug fixes

  • estimate_contrasts() did not calculate contrasts for all levels when the
    predictor of interest was converted to a factor inside the model formula.

  • Fixed issue in estimate_contrasts() when comparsison (formerly: method)
    was not "pairwise".

modelbased 0.8.9

27 Oct 08:10
38a93b7
Compare
Choose a tag to compare
  • Fixed issues related to updates of other easystats packages.

modelbased 0.8.8

11 Jun 14:51
Compare
Choose a tag to compare
v0.8.8

bump version number to non dev @strengejacke

0.3.0

27 Sep 08:40
Compare
Choose a tag to compare

CRAN release