Skip to contents

mars package logo

mars provides tools for meta-analysis and research synthesis in R, with support for univariate, multivariate, and multilevel meta-analytic models. It also includes helpers for within-study variance-covariance matrices, path analysis after correlation synthesis, publication-bias models, diagnostics, network meta-analysis, reporting, and exploratory random-forest meta-analysis.

Installation

Install the released version from CRAN with:

The package can be installed directly from GitHub using devtools or the remotes package with the following command:

remotes::install_github("lebebr01/mars")

To install the package vignettes, add the build_vignettes argument:

remotes::install_github("lebebr01/mars",
                        build_vignettes = TRUE)

Quick Example

A univariate random-effects meta-analysis can be fit with mars() by supplying an effect-size column, a sampling-variance column, and a study identifier:

library(mars)

fit <- mars(
  data = teacher_expectancy,
  studyID = "study",
  effectID = NULL,
  sample_size = NULL,
  formula = yi ~ 1,
  variance = "vi",
  varcov_type = "univariate",
  structure = "univariate"
)

summary(fit)

Choosing a workflow

Most analyses start with mars(), but the package also includes higher-level helpers for common research-synthesis tasks:

Goal Start with Learn more
Estimate an average effect, meta-regression, or dependent-effects model mars() Installed vignette: vignette("MARS-Model-Examples", package = "mars")
Reproduce the Becker, Aloe, and Cheung correlation-synthesis example mars(), df_to_corr(), path_model() Installed vignette: vignette("Becker-Aloe-Cheung-2019", package = "mars")
Fix heterogeneity values for sensitivity analyses mars(tau2 = ...) Installed vignette: vignette("User-Specified-Heterogeneity", package = "mars")
Choose among core workflows mars() pkgdown article: Choosing a MARS workflow
Build within-study variance-covariance matrices mars() with varcov_type pkgdown article: Within-study variance-covariance metrics
Diagnose residuals, influence, or heterogeneity residual_diagnostics(), influence_diagnostics(), profile_random_effects() pkgdown article: Residual and influence diagnostics
Assess publication bias or sensitivity publication_bias(), mars_alt_estimation() pkgdown articles for publication bias and alternative estimation
Fit treatment networks network_meta() pkgdown article: Network meta-analysis
Fit path, EFA, or CFA models after correlation synthesis path_model(), efa_from_synthesis(), cfa_from_synthesis() pkgdown articles for latent-factor and synthesis-report workflows
Create review and reporting graphics prisma_diagram(), risk_of_bias_plot(), gap_map_plot() pkgdown articles for review graphics
Explore nonlinear moderator patterns mars_rf() pkgdown article: Random-forest meta-analysis

Explore articles

The CRAN package installs a small set of core vignettes. Additional workflow articles are built for the pkgdown site at https://mars.brandonlebeau.org/.

Available installed vignettes can be accessed with the following code:

vignette(package = 'mars')