Releases: FBartos/RoBMA
Releases · FBartos/RoBMA
Release list
RoBMA 4.0.0
Breaking changes
- rewrites the package around the unified
brmaclass hierarchy. Single-model fits now usebrma(),brma.glmm(),bselmodel(),bPET(), andbPEESE(); model-averaged fits useBMA(),BMA.glmm(), andRoBMA(). - removes the legacy
RoBMA.reg(),NoBMA(),NoBMA.reg(),BiBMA(), andBiBMA.reg()constructors. Usemods,scale, andclusterin the new constructors,BMA()for no-bias normal-likelihood model averaging, andBMA.glmm()for GLMM model averaging. - replaces old input aliases such as
d,r,logOR,OR,z,y,se,v,n,study_names,study_ids,weight, andtransformationwithyi,vi/sei,ni,slab,cluster,weights,measure,output_measure, andtransform. - removes legacy helper APIs including
combine_data(),check_setup(),extract_posterior(),marginal_summary(),marginal_plot(),plot_models(),adjusted_effect(),as_zcurve(), and the old z-curve plotting methods. - normal-likelihood fitting functions now require an explicit
measurefor fitted models. Usemeasure = "GEN"for generic effect sizes without a known unit-information scale. update()forbrmaobjects now focuses on extending MCMC samples, updating labels, and refreshing cached quantities, not changing model structure.set_convergence_checks()no longer accepts the oldremove_failedandbalance_probabilityarguments.
Features
- adds
brma()/brma.norm()for single normal-likelihood Bayesian meta-analysis, including random-effects, meta-regression, multilevel, and location-scale models. - adds
brma.glmm()for binomial-normal and Poisson-normal GLMM meta-analysis from raw two-arm counts (measure = "OR"and"IRR"). - adds single-model publication-bias constructors
bselmodel(),bPET(), andbPEESE(). - adds
BMA()/BMA.norm()for Bayesian model averaging without publication-bias adjustment. - adds
BMA.glmm()for Bayesian model averaging of GLMM meta-analyses without publication-bias adjustment. - rewrites
RoBMA()as a product-space model-averaged ensemble over effect, heterogeneity, moderator, scale, and publication-bias components. - adds formula/data-frame input handling for effect sizes, moderators, scale predictors, clusters, labels, subsets, likelihood weights, and raw GLMM counts.
- adds default prior construction from standardized effect-size measures, estimated or manually supplied unit-information standard deviations, and informed empirical priors.
- adds
prior_weightfunction(),wf_cumulative(),wf_fixed(), andwf_independent()for BayesTools-backed selection-weightfunction priors. - adds
prior_PET(),prior_PEESE(),prior_none(),prior_factor(),prior_informed(), and BayesTools contrast helpers as package-level prior utilities. - adds
posteriorpackage interfaces viaas_draws(),as_draws_array(),as_draws_df(),as_draws_list(),as_draws_matrix(), andas_draws_rvars()for fitted models andbrma_samples. - adds the
brma_samplesposterior-sample class with print, summary, matrix, andposteriorconversion methods. - adds
predict.brma()for posterior predictions of fixed terms, cluster effects, latent true effects, observed responses, and scale terms, withnewdata,conditional,bias_adjusted,output_measure, andtransformsupport. - adds convenience wrappers
fitted(),pooled_effect(),pooled_heterogeneity(),blup(),true_effects(), andranef()forbrmaobjects. - adds model-comparison helpers
add_loo(),loo(),loo_compare(),loo_weights(),check_loo(),add_waic(),waic(), andlogLik()using theloopackage. - adds bridge-sampling marginal likelihood support for single-model
brmafits viaadd_marglik(),bridge_sampler(),logml(),bf(),bayes_factor(), andpost_prob(). - adds residual and influence diagnostics:
residuals(),rstandard(),rstudent()/LOO-PIT,hatvalues(),influence(),dfbetas(),dffits(),cooks.distance(),covratio(), andvif(). - adds plotting methods for
brmaobjects: posterior/prior plots,funnel(),regplot(),qqnorm(),radial()/galbraith(), MCMC diagnostic plots, weightfunction plots, and PET-PEESE plots. - adds
marginal_means()with summary and plotting methods for moderator models. - adds
summary_models()for marginal and individual model-weight summaries of product-spaceRoBMA,BMA, andBMA.glmmobjects. - adds
interpret()for concise textual interpretation of fittedbrmaand model-averaged objects. - renames the zplot diagnostic API to
as_zplot()and adds the direct plotting wrapperzplot(), withplot(),hist(),lines(),summary(), and print methods for zplot objects. - adds
RoBMA.options()andRoBMA.get_option()package options for defaults such as core count, automatic LOO/WAIC/marginal-likelihood computation, prior scaling defaults, and selection-bias defaults.
Changes
- renames the multilevel clustering argument to
cluster. - renames study labels to
slab, matchingmetafornaming. - renames likelihood weights to
weightsand applies them consistently to posterior fitting, log-likelihoods, LOO, WAIC, and diagnostics. - uses
measure,output_measure, andtransformfor effect-size scale handling. Supported conversions includeSMD,COR,ZCOR, andOR;transform = "EXP"exponentiates log ratio measures for display. - standardizes continuous predictors by default and transforms reported coefficients back to the original scale unless standardized coefficients are requested.
- uses treatment contrasts by default for single-model constructors and mean-difference contrasts by default for model-averaged constructors.
- changes
predict.brma()default totype = "terms". GLMMtype = "response"predictions return continuity-corrected effect-size estimators by default viaas_measure = TRUE. - separates output
unitfromconditioning_depthfor residuals, fitted values, LOO, WAIC, and related diagnostics. - supports estimate-level and, for multilevel models, cluster-level LOO/WAIC targets with target metadata to prevent invalid comparisons.
- keeps bridge-sampling marginal likelihoods for single-model
brmaobjects; product-spaceRoBMA,BMA, andBMA.glmmobjects relly on product-space only. - routes selection-weightfunction priors through the BayesTools selection backend and selected-normal kernel, removing legacy weighted-normal mapping paths.
- uses
bias_indicatorand branch-aware selected-normal contexts for RoBMA publication-bias mixtures instead of inferring selection branches fromomega. - increases zplot default posterior thinning controls to
10000samples and acceptsInfwhere full posterior evaluation is requested. - adds
max_samplescontrols to expensive funnel, regplot, and zplot summaries. - updates the package startup message to point users to
vignette("v00-introduction", package = "RoBMA"). - requires BayesTools 0.3.0 for forward API and selection-backend support.
- adds
bridgesampling,loo,MASS, andparallelas imports andposterioras a suggested package.
Fixes
- fixes loading and runtime checks for the RoBMA JAGS module and native R routines.
Performance and internals
- moves fitting to JAGS product-space models with mixture-prior indicators for model averaging.
- replaces legacy weighted-normal and multivariate-normal native code with selected-normal kernels shared by JAGS and R-native calls.
- adds native selected-normal routines for log likelihoods, normalizers, CDFs, moments, RNG, weighted summaries, funnel contours, regplot intervals, and zplot densities/threshold summaries.
- adds native GLMM marginal and cluster log-likelihood helpers for binomial and Poisson models.
- caches selected-normal normalizers and uses telescoping selection probabilities with log-space fallbacks for better numerical stability.
- relocates selected-normal C++ code to
src/selnorm/and updatesMakevars*, native registration, cleanup rules, and JAGS distribution registration. - removes unused native matrix/LAPACK helper sources and older source-level transformation helpers.
Documentation and tests
- reorganizes vignettes into numbered workflows covering introduction, prior distributions, baseline Bayesian meta-analysis, feature coverage, metafor parity, model averaging, RoBMA, multilevel models, medicine examples, and zplot diagnostics.
- regenerates roxygen documentation for the new constructors, priors, predictions, summaries, diagnostics, plots, model-comparison methods, and datasets.
- refreshes the README and pkgdown site for the 4.0.0 API.
- adds cached model fits under numbered vignette/model directories.
- refactors tests into ordered input, fitting, prediction, plotting, diagnostics, model-comparison, selected-normal kernel, and vignette-cache coverage.
- adds regression tests for selected-normal telescope probabilities, native/R fallback parity, posterior-row alignment, GLMM response conversion, LOO/WAIC targets, bridge sampling, and visual outputs.
RoBMA 3.6.1
Features
Explanationvignette that helps navigate users through the vignettes- two vignettes demonstrating robust Bayesian meta-analysis and meta-regressions
summary()function now provides publication bias model type summary (type = "models") for models fitted usingalgorithm = "ss"- improves control over
plot.zcurve_RoBMA(i.e., specifying col, border, etc for the individual elements)
RoBMA 3.6.0
Features
funnel()plot to visualize residuals vs the expected sampling distribution forRoBMA()andRoBMA.reg()models when using thealgorithm = "ss"residuals()method forRoBMA()andRoBMA.reg()models when using thealgorithm = "ss"as_zcurve()function to transform meta-analytic models into a z-curve style object, only available forRoBMA()andRoBMA.reg()fitted using thealgorithm = "ss"plot(),summary(), andprint()functions for theas_zcurveobjects
RoBMA 3.5.1
Features
summary()function now supports astandardized_coefficientsargument to report either standardized (default) or raw meta-regression coefficientsextract()function to extract the posterior samples of the model parameterstrue_effects()function to summarize the true effect size estimates ofRoBMA()andRoBMA.reg()models when using thealgorithm = "ss"predict()method forRoBMA()andRoBMA.reg()models when using thealgorithm = "ss"
Fixes
- fitting a meta-regression using predictors with missing values result in a clear error message
Changes
- improving the speed of unit tests
RoBMA 3.5.0
version 3.5
Features
- approximate and computationally feasibly 3lvl selection models via the
RoBMA()andRoBMA.reg()functions with thestudy_idsargument when usingalgorithm = "ss" - 3lvl binomial-normal models for binary data via the
BiBMAandBiBMA.regfunctions with thestudy_idsargument when usingalgorithm = "ss" pooled_effect()function to compute the pooled effect size from theRoBMA.reg,NoBMA.reg, andBiBMA.regmodelsadjusted_effect()function to compute the adjusted effect size from theRoBMA.reg,NoBMA.reg, andBiBMA.regmodels- enables
summary_heterogeneity()for BiBMA models
Fixes
- passing and checks of the
study_idsandstudy_labelsarguments - PEESE prior distribution now scale as 1/scale instead of 1/scale^2 with the
rescale_priorsargument - the conditional prediction interval based on
summary_heterogeneity()is now conditional on the presence of the effect - additional minor prior handling fixes (i.e., missing marginal estimates when only alternative prior distributions were specified etc)
- diagnostics with mixture baseline priors when using
algorithm = "ss" summary_heterogeneity()with only a single study does not produce relative heterogeneity instead of crashing
RoBMA 3.4.0
Features
- adding binomial-normal meta-regression models for binary data via the
BiBMA.regfunction - the spike and slab algorithm for faster model estimation via the
algorithm = "ss"argument for BiBMA models - default prior distributions for all parameters of BiBMA models are now set via the
set_default_binomial_priors()function
RoBMA 3.3.0
Features
- the spike and slab algorithm for faster model estimation via the
algorithm = "ss"argument (see a new vignette for more details) - refactoring of the JAGS C++ code of weighted distributions and exporting of the lpdfs into JAGS (maintenance)
- weights_mix JAGS prior distribution to sample a mixture of weight functions directly
Fixes
- incorrectly omitting models with more than one predictor when computing conditional marginal summary
RoBMA 3.2.0
Features
summary_heterogeneity()function to summarize the heterogeneity of the RoBMA models (prediction interval, tau, tau^2, I^2, and H^2)check_RoBMA_convergence()function to check the convergence of the RoBMA models- adds informed prior distributions for binary and time-to-event outcomes via BayesTools 0.2.17
Fixes
- checking and fixing the number of available cores upon loading the package (hopefully fixes some parallelization issues)
update()function re-evaluates convergence checks of individual models (#34)- typos and minor issues in the vignettes
RoBMA 3.1.0
Features
- binomial-normal models for binary data via the
BiBMAfunction NoBMAandNoBMA.reg()functions as wrappers aroundRoBMARoBMA.reg()functions for simpler specification of publication bias unadjusted Bayesian model-averaged meta-analysis- adding odds ratios output transformation`
- extending (instead of a complete refitting) of models via the
update.RoBMA()function (only non-converged models by default or all by settingextend_all = TRUE)
Fixes
- handling of non-converged models