Releases: easystats/performance
performance 0.11.0
New supported models
- Rudimentary support for models of class
serp
from package serp.
New functions
-
simulate_residuals()
andcheck_residuals()
, to simulate and check residuals
from generalized linear (mixed) models. Simulating residuals is based on the
DHARMa package, and objects returned bysimulate_residuals()
inherit from
theDHARMa
class, and thus can be used with any functions from the DHARMa
package. However, there are also implementations in the performance package,
such ascheck_overdispersion()
,check_zeroinflation()
,check_outliers()
orcheck_model()
. -
Plots for
check_model()
have been improved. The Q-Q plots are now based
on simulated residuals from the DHARMa package for non-Gaussian models, thus
providing more accurate and informative plots. The half-normal QQ plot for
generalized linear models can still be obtained by setting the new argument
residual_type = "normal"
. -
Following functions now support simulated residuals (from
simulate_residuals()
)
resp. objects returned fromDHARMa::simulateResiduals()
:check_overdispersion()
check_zeroinflation()
check_outliers()
check_model()
General
-
Improved error messages for
check_model()
when QQ-plots cannot be created. -
check_distribution()
is more stable for possibly sparse data.
Bug fixes
-
Fixed issue in
check_normality()
for t-tests. -
Fixed issue in
check_itemscale()
for data frame inputs, whenfactor_index
was not a named vector.
performance 0.10.9
Changes
-
r2()
for models of classglmmTMB
without random effects now returns the
correct r-squared value for non-mixed models. -
check_itemscale()
now also accepts data frames as input. In this case,
factor_index
must be specified, which must be a numeric vector of same
length as number of columns inx
, where each element is the index of the
factor to which the respective column inx
. -
check_itemscale()
gets aprint_html()
method. -
Clarification in the documentation of the
estimator
argument for
performance_aic()
. -
Improved plots for overdispersion-checks for negative-binomial models from
package glmmTMB (affectscheck_overdispersion()
andcheck_mnodel()
). -
Improved detection rates for singularity in
check_singularity()
for models
from package glmmTMB. -
For model of class
glmmTMB
, deviance residuals are now used in the
check_model()
plot. -
Improved (better to understand) error messages for
check_model()
,
check_collinearity()
andcheck_outliers()
for models with non-numeric
response variables. -
r2_kullback()
now gives an informative error for non-supported models.
Bug fixes
-
Fixed issue in
binned_residuals()
for models with binary outcome, where
in rare occasions empty bins could occur. -
performance_score()
should no longer fail for models where scoring rules
can't be calculated. Instead, an informative message is returned. -
check_outliers()
now properly accept thepercentage_central
argument when
using the"mcd"
method. -
Fixed edge cases in
check_collinearity()
andcheck_outliers()
for models
with response variables of classesDate
,POSIXct
,POSIXlt
ordifftime
. -
Fixed issue with
check_model()
for models of package quantreg.
performance 0.10.8
Changes
- Changed behaviour of
check_predictions()
for models from binomial family,
to get comparable plots for different ways of outcome specification. Now,
if the outcome is a proportion, or defined as matrix of trials and successes,
the produced plots are the same (because the models should be the same, too).
Bug fixes
-
Fixed CRAN check errors.
-
Fixed issue with
binned_residuals()
for models with binomial family, where
the outcome was a proportion.
performance 0.10.7
Breaking changes
binned_residuals()
gains a few new arguments to control the residuals used
for the test, as well as different options to calculate confidence intervals
(namely,ci_type
,residuals
,ci
anditerations
). The default values
to compute binned residuals have changed. Default residuals are now "deviance"
residuals (and no longer "response" residuals). Default confidence intervals
are now "exact" intervals (and no longer based on Gaussian approximation).
Useci_type = "gaussian"
andresiduals = "response"
to get the old defaults.
Changes to functions
binned_residuals()
- likecheck_model()
- gains ashow_dots
argument to
show or hide data points that lie inside error bounds. This is particular
useful for models with many observations, where generating the plot would be
very slow.
performance 0.10.6
General
- Support for
nestedLogit
models.
Changes to functions
check_outliers()
for method"ics"
now detects number of available cores
for parallel computing via the"mc.cores"
option. This is more robust than
the previous method, which usedparallel::detectCores()
. Now you should
set the number of cores viaoptions(mc.cores = 4)
.
Bug fixes
- Fixed issues is
check_model()
for models that used data sets with
variables of class"haven_labelled"
.
performance 0.10.5
Changes to functions
-
More informative message for
test_*()
functions that "nesting" only refers
to fixed effects parameters and currently ignores random effects when detecting
nested models. -
check_outliers()
for"ICS"
method is now more stable and less likely to
fail. -
check_convergence()
now works for parsnip_glm
models.
Bug fixes
check_collinearity()
did not work for hurdle- or zero-inflated models of
package pscl when model had no explicitly defined formula for the
zero-inflation model.
performance 0.10.4
-
icc()
andr2_nakagawa()
gain aci_method
argument, to either calculate
confidence intervals usingboot::boot()
(instead oflmer::bootMer()
) when
ci_method = "boot"
or analytical confidence intervals
(ci_method = "analytical"
). Useci_method = "boot"
when the default method
fails to compute confidence intervals and useci_method = "analytical"
if
bootstrapped intervals cannot be calculated at all. Note that the default
computation method is preferred. -
check_predictions()
accepts abandwidth
argument (smoothing bandwidth),
which is passed down to theplot()
methods density-estimation. -
check_predictions()
gains atype
argument, which is passed down to the
plot()
method to change plot-type (density or discrete dots/intervals).
By default,type
is set to"default"
for models without discrete outcomes,
and elsetype = "discrete_interval"
. -
performance_accuracy()
now includes confidence intervals, and reports those
by default (the standard error is no longer reported, but still included).
Bug fixes
- Fixed issue in
check_collinearity()
for fixest models that usedi()
to create interactions in formulas.
performance 0.10.3
New functions
item_discrimination()
, to calculate the discrimination of a scale's items.
Support for new models
-
model_performance()
,check_overdispersion()
,check_outliers()
andr2()
now work with objects of classfixest_multi
(@etiennebacher, #554). -
model_performance()
can now return the "Weak instruments" statistic and
p-value for models of classivreg
withmetrics = "weak_instruments"
(@etiennebacher, #560). -
Support for
mclogit
models.
Changes to functions
-
test_*()
functions now automatically fit a null-model when only one model
objects was provided for testing multiple models. -
Warnings in
model_performance()
for unsupported objects of class
BFBayesFactor
can now be suppressed withverbose = FALSE
. -
check_predictions()
no longer fails with issues whenre_formula = NULL
for mixed models, but instead gives a warning and tries to compute posterior
predictive checks withre_formuka = NA
. -
check_outliers()
now also works for meta-analysis models from packages
metafor and meta. -
plot()
forperformance::check_model()
no longer produces a normal QQ plot
for GLMs. Instead, it now shows a half-normal QQ plot of the absolute value
of the standardized deviance residuals.
Bug fixes
- Fixed issue in
print()
method forcheck_collinearity()
, which could mix
up the correct order of parameters.
performance 0.10.2
General
- Revised usage of
insight::get_data()
to meet forthcoming changes in the
insight package.
Changes to functions
check_collinearity()
now acceptsNULL
for theci
argument.
Bug fixes
- Fixed issue in
item_difficulty()
with detecting the maximum values of an
item set. Furthermore,item_difficulty()
gets amaximum_value
argument
in case no item contains the maximum value due to missings.
performance 0.10.1
General
- Minor improvements to the documentation.
Changes to functions
-
icc()
andr2_nakagawa()
getci
anditerations
arguments, to compute
confidence intervals for the ICC resp. R2, based on bootstrapped sampling. -
r2()
getsci
, to compute (analytical) confidence intervals for the R2. -
check_predictions()
accepts abw
argument (smoothing bandwidth), which is
passed down to theplot()
methods density-estimation. The default for the
smoothing bandwidthbw
has changed from"nrd0"
to"nrd"
, which seems
to produce better fitting plots for non-gaussian models. -
The model underlying
check_distribution()
was now also trained to detect
cauchy, half-cauchy and inverse-gamma distributions. -
model_performance()
now allows to include the ICC for Bayesian models.
Bug fixes
-
verbose
didn't work forr2_bayes()
withBFBayesFactor
objects. -
Fixed issues in
check_model()
for models with convergence issues that lead
toNA
values in residuals. -
Fixed bug in
check_outliers
whereby passing multiple elements to the
threshold list generated an error (#496). -
test_wald()
now warns the user about inappropriate F test and calls
test_likelihoodratio()
for binomial models.