- Fix: Now compatible with latest StanHeaders v2.26.25 (fixes #23)
- Fix: Dealt with various tidyverse deprecations
- Fix: Updated TSD URLs again (thanks to @ndunnewind)
- Feature: Treatment labels in network plots can now be nudged away from the
nodes when
weight_nodes = TRUE
, using the newnudge
argument toplot.nma_data()
(#15). - Feature: The data frame returned by calling
as_tibble()
oras.data.frame()
on annma_summary
object (such as relative effects or predictions) now includes columns for the corresponding treatment (.trt
) or contrast (.trta
and.trtb
), and a.category
column may be included for multinomial models. Previously these details were only present as part of theparameter
column - Feature: Added log t prior distribution
log_student_t()
, which can be used for positive-valued parameters (e.g. heterogeneity variance). - Improvement:
set_agd_contrast()
now produces an informative error message when the covariance matrix implied by these
column is not positive definite. Previously this was only checked by Stan after calling thenma()
function. - Improvement: Updated plaque psoriasis ML-NMR vignette to include new analyses, including assessing the assumptions of population adjustment and synthesising multinomial outcomes.
- Improvement: Improved behaviour of the
.trtclass
special in regression formulas, now main effects of.trtclass
are always removed since these are collinear with.trt
. This allows expansion of interactions with*
to work properly, e.g.~variable*.trtclass
, whereas previously this resulted in an over-parametrised model. - Fix: CRAN check note for manual HTML5 compatibility.
- Fix: Residual deviance and log likelihood parameters are now named correctly when only contrast-based aggregate data is present (PR #19).
- Fix: Error in
get_nodesplits()
when studies have multiple arms of the same treatment. - Fix:
print.nma_data()
now prints the repeated arms when studies have multiple arms of the same treatment. - Fix: CRAN warning regarding invalid img tag height attribute in documentation.
- Fix: tidyr v1.2.0 breaks ordered multinomial models when some studies do not
report all categories (i.e. some multinomial category outcomes are
NA
inmulti()
) (PR #11)
- Feature: Node-splitting models for assessing inconsistency are now available
with
consistency = "nodesplit"
innma()
. Comparisons to split can be chosen using thenodesplit
argument, by default all possibly inconsistent comparisons are chosen usingget_nodesplits()
. Node-splitting results can be summarised withsummary.nma_nodesplit()
and plotted withplot.nodesplit_summary()
. - Feature: The correlation matrix for generating integration points with
add_integration()
for ML-NMR models is now adjusted to the underlying Gaussian copula, so that the output correlations of the integration points better match the requested input correlations. A new argumentcor_adjust
controls this behaviour, with options"spearman"
,"pearson"
, or"none"
. Although these correlations typically have little impact on the results, for strict reproducibility the old behaviour from version 0.3.0 and below is available withcor_adjust = "legacy"
. - Feature: For random effects models, the predictive distribution of
relative/absolute effects in a new study can now be obtained in
relative_effects()
andpredict.stan_nma()
respectively, using the new argumentpredictive_distribution = TRUE
. - Feature: Added option to calculate SUCRA values when summarising the posterior
treatment ranks with
posterior_ranks()
orposterior_rank_probs()
, when argumentsucra = TRUE
. - Improvement: Factor order is now respected when
trt
,study
, ortrt_class
are factors, previously the order of levels was reset into natural sort order. - Improvement: Update package website to Bootstrap 5 with release of pkgdown 2.0.0
- Fix: Model fitting is now robust to non-default settings of
options("contrasts")
. - Fix:
plot.nma_data()
no longer gives a ggplot deprecation warning (PR #6). - Fix: Bug in
predict.stan_nma()
with a single covariate whennewdata
is adata.frame
(PR #7). - Fix: Attempting to call
predict.stan_nma()
on a regression model with only contrast data and nonewdata
orbaseline
specified now throws a descriptive error message.
- Feature: Added
baseline_type
andbaseline_level
arguments topredict.stan_nma()
, which allow baseline distributions to be specified on the response or linear predictor scale, and at the individual or aggregate level. - Feature: The
baseline
argument topredict.stan_nma()
can now accept a (named) list of baseline distributions ifnewdata
contains multiple studies. - Improvement: Misspecified
newdata
arguments to functions likerelative_effects()
andpredict.stan_nma()
now give more informative error messages. - Fix: Constructing models with contrast-based data previously gave errors in some scenarios (ML-NMR models, UME models, and in some cases AgD meta-regression models).
- Fix: Ensure CRAN additional checks with
--run-donttest
run correctly.
- Fix: Producing relative effect estimates for all contrasts using
relative_effects()
withall_contrasts = TRUE
no longer gives an error for regression models. - Fix: Specifying the covariate correlation matrix
cor
inadd_integration()
is not required when only one covariate is present. - Improvement: Added more detailed documentation on the likelihoods and link
functions available for each data type (
likelihood
andlink
arguments innma()
).
- Feature: The
set_*()
functions now acceptdplyr::mutate()
style semantics, allowing inline variable transformations. - Feature: Added ordered multinomial models, with helper function
multi()
for specifying the outcomes. Accompanied by a new data sethta_psoriasis
and vignette. - Feature: Implicit flat priors can now be specified, on any parameter, using
flat()
. - Improvement:
as.array.stan_nma()
is now much more efficient, meaning that many post-estimation functions are also now much more efficient. - Improvement:
plot.nma_dic()
is now more efficient, particularly with large numbers of data points. - Improvement: The layering of points when producing "dev-dev" plots using
plot.nma_dic()
with multiple data types has been reversed for improved clarity (now AgD over the top of IPD). - Improvement: Aggregate-level predictions with
predict()
from ML-NMR / IPD regression models are now calculated in a much more memory-efficient manner. - Improvement: Added an overview of examples given in the vignettes.
- Improvement: Network plots with
weight_edges = TRUE
no longer produce legends with non-integer values for the number of studies. - Fix:
plot.nma_dic()
no longer gives an error when attempting to specify.width
argument when producing "dev-dev" plots.
- Format DESCRIPTION to CRAN requirements
- Wrapped long-running examples in
\donttest{}
instead of\dontrun{}
- Reduced size of vignettes
- Added methods paper reference to DESCRIPTION
- Added zenodo DOI
- Feature: Network plots, using a
plot()
method fornma_data
objects. - Feature:
as.igraph()
,as_tbl_graph()
methods fornma_data
objects. - Feature: Produce relative effect estimates with
relative_effects()
, posterior ranks withposterior_ranks()
, and posterior rank probabilities withposterior_rank_probs()
. These will be study-specific when a regression model is given. - Feature: Produce predictions of absolute effects with a
predict()
method forstan_nma
objects. - Feature: Plots of relative effects, ranks, predictions, and parameter
estimates via
plot.nma_summary()
. - Feature: Optional
sample_size
argument forset_agd_*()
that:- Enables centering of predictors (
center = TRUE
) innma()
when a regression model is given, replacing theagd_sample_size
argument ofnma()
- Enables production of study-specific relative effects, rank probabilities, etc. for studies in the network when a regression model is given
- Allows nodes in network plots to be weighted by sample size
- Enables centering of predictors (
- Feature: Plots of residual deviance contributions for a model and "dev-dev"
plots comparing residual deviance contributions between two models, using a
plot()
method fornma_dic
objects produced bydic()
. - Feature: Complementary log-log (cloglog) link function
link = "cloglog"
for binomial likelihoods. - Feature: Option to specify priors for heterogeneity on the standard deviation,
variance, or precision, with argument
prior_het_type
. - Feature: Added log-Normal prior distribution.
- Feature: Plots of prior distributions vs. posterior distributions with
plot_prior_posterior()
. - Feature: Pairs plot method
pairs()
. - Feature: Added vignettes with example analyses from the NICE TSDs and more.
- Fix: Random effects models with even moderate numbers of studies could be very slow. These now run much more quickly, using a sparse representation of the RE correlation matrix which is automatically enabled for sparsity above 90% (roughly equivalent to 10 or more studies).
- Initial release.