CRAN Task View: Meta-Analysis

Maintainer:Michael Dewey
Contact:lists at

This task view covers packages which include facilities for meta-analysis of summary statistics from primary studies. The task view does not consider the meta-analysis of individual participant data (IPD) which can be handled by any of the standard linear modelling functions but does include some packages which offer special facilities for IPD.

The standard meta-analysis model is a form of weighted least squares and so any of the wide range of R packages providing weighted least squares would in principle be able to fit the model. The advantage of using a specialised package is that (a) it takes care of the small tweaks necessary (b) it provides a range of ancillary functions for displaying and investigating the model. Where the model is referred to below it is this model which is meant.

Where summary statistics are not available a meta-analysis of significance levels is possible. This is not completely unconnected with the problem of adjustment for multiple comparisons but the packages below which offer this, chiefly in the context of genetic data, also offer additional functionality.

Univariate meta-analysis

Preparing for meta-analysis

Fitting the model

Graphical methods

An extensive range of graphical procedures is available.

Investigating heterogeneity Model criticism Investigating small study bias

The issue of whether small studies give different results from large studies has been addressed by visual examination of the funnel plots mentioned above. In addition:

Unobserved studies

A recurrent issue in meta-analysis has been the problem of unobserved studies.

Other study designs Meta-analysis of significance values

metap provides some facilities for meta-analysis of significance values. Some of these methods are also provided in some of the genetics packages mentioned below.

Multivariate meta-analysis

Standard methods outlined above assume that the effect sizes are independent. This assumption may be violated in a number of ways: within each primary study multiple treatments may be compared to the same control, each primary study may report multiple endpoints, or primary studies may be clustered for instance because they come from the same country or the same research team. In these situations where the outcome is multivariate:

Meta-analysis of studies of diagnostic tests

A special case of multivariate meta-analysis is the case of summarising studies of diagnostic tests. This gives rise to a bivariate, binary meta-analysis with the within-study correlation assumed zero although the between-study correlation is estimated. This is an active area of research and a variety of methods are available including what is referred to here called Reitsma's method, and the heirarchical summary receiver operating characteristic (HSROC) method. In many situations these are equivalent.


Where suitable moderator variables are available they may be included using meta-regression. All these packages are mentioned above, this just draws that information together.

Individual participant data (IPD)

Where all studies can provide individual participant data then software for analysis of multi--centre trials or multi-centre cohort studies should prove adequate and is outside the scope of this task view. Other packages which provide facilities related to IPD are:

Network meta-analysis

Also known as multiple treatment comparison. This is a very active area of research and development. Note that some of the packages mentioned above under multivariate meta-analysis can also be used for network meta-analysis with appropriate setup.

This is provided in a Bayesian framework by gemtc, which acts as a front-end to BUGS or JAGS, and pcnetmeta, which uses JAGS. nmaINLA uses integrated nested Laplace approximations as an alternative to MCMC.It provides a number of data-sets. netmeta works in a frequentist framework. Both pcnetmeta and netmeta provide network graphs and netmeta provides a heatmap for displaying inconsistency and heterogeneity.


There are a number of packages specialising in genetic data: CPBayes uses a Bayesian approach to study cross-pheotype genetic associations, EasyStrata for startified GWAS meta-analysis with graphics, etma proposes a new statistical method to detect epistasis, gap combines p-values, getmstatistic quantifies systematic heterogeneity, MetABEL provides meta-analysis of genome wide SNP association results, MetaDE provides microarray meta-analysis of differentially expressed dene detection, MetaIntegrator provides an extensive set of functions for genetic studies, metaMA provides meta-analysis of p-values or moderated effect sizes to find differentially expressed genes, MetaPath performs meta-analysis for pathway enrichment, MetaPCA provides meta-analysis in the dimension reduction of genomic data, MetaQC provides objective quality control and inclusion/exclusion criteria for genomic meta-analysis, metaRNASeq meta-analysis from multiple RNA sequencing experiments, MultiMeta for meta-analysis of multivariate GWAS results with graphics, designed to accept GEMMA format, MetaSKAT, seqMeta, provide meta-analysis for the SKAT test.


CRTSize provides meta-analysis as part of a package primarily dedicated to the determination of sample size in cluster randomised trials in particular by simulating adding a new study to the meta-analysis.

CAMAN offers the possibility of using finite semiparametric mixtures as an alternative to the random effects model where there is heterogeneity. Covariates can be included to provide meta-regression.

RcmdrPlugin.EZR provides an interface via the Rcmdr GUI using meta and metatest to do the heavy lifting, RcmdrPlugin.RMTCJags provides an interface for network meta-analysis using BUGS code, and MAVIS provides a shiny interface using metafor, MAc and MAd.

CRAN packages:

Related links: