# The metafor Package

A Meta-Analysis Package for R

news:news2014

## Package News for 2014

### December 15th, 2014: Heterogeneity Estimators Galore

I added an example to the analysis examples section showing how to reproduce the results from one of the illustrative datasets used in the article by DerSimonian and Kacker (2007), and since I am sure there is a desperate need in the world for yet even more ways of estimating the amount of heterogeneity in a random-effects model meta-analysis, I threw in a whole bunch of extra estimators.

### November 24th, 2014: New Version Out (1.9-5)

New version of the metafor package is out (version 1.9-5). Adds a bit of functionality and flexibility, corrects a few minor bugs, and includes some improvements to the rma.mv() function. Full changelog can be found here.

One thing I am quite excited about is that the rma.mv() function now makes use of the Cholesky decomposition in the optimization when there is a random = ~ inner | outer formula and struct="UN". This is numerically more stable than the old approach that avoided non-positive definite solutions by forcing the log-likelihood to be -Inf in those cases (which creates sharp discontinuities in the likelihood surface). The old behavior can be restored with control = list(cholesky=FALSE), but I doubt that this would be needed.

One other thing: rma.mv() now requires the inner variable in an ~ inner | outer formula to be a factor or character variable (except when struct="AR" or struct="HAR"). This could potentially break some existing code, which of course is a no-no. But rma.mv() has treated the inner variable as a factor all along anyway and in the future, I am considering to add functionality that would allow for non-factor inner variables, which would allow the addition of random slopes to the model.﻿

### November 23th, 2014: Comparing Estimates of Independent Meta-Analyses or Subgroups

Added an illustration to the tips and notes section on how to compare estimates from two independent meta-analyses or subgroups of studies.

### September 28th, 2014: Another Analysis Example

I added another example to the analysis examples section. This one shows how to fit a three-level meta-analytic model, as described by Konstantopoulos (2011).

### September 8th, 2014: Comparison of the Mantel-Haenszel Method in Different Software

When used with the default settings, the rma.mh() function in metafor can provide results that differ from those obtained with other meta-analytic software, such as the metan function in Stata, the Review Manager (RevMan) from the Cochrane Collaboration, or Comprehensive Meta-Analysis (CMA). By default, metafor does not apply any adjustments to the cell counts in studies with zero cases in either group when applying the Mantel-Haenszel method, while other software may do this automatically. For more details, take a look at the comparison of the Mantel-Haenszel method in different software and what settings to use to make metafor provide the exact same results as other software. Since this question has come a few times, I have also added this to the FAQ.

### September 6th, 2014: Models with Multiple Factors and Their Interaction

I added another illustration to the tips and notes section, this time on models with multiple factors and their interaction. I suggest reading this together with the illustration on how to test factors and linear combinations of parameters in (mixed-effects) meta-regression models.

### August 11th, 2014: Code for Bootstrapping

Under the tips and notes section, there is now a new item, showing how to carry out bootstrapping with meta-analytic models.

### August 10th, 2014: Added a New Analysis Example

I just added a new item to the analysis examples section, based on my 2007 article on confidence intervals for the amount of heterogeneity in random-effects models: Viechtbauer, W. (2007). Confidence intervals for the amount of heterogeneity in meta-analysis. Statistics in Medicine, 26(1), 37-52. Code is provided for all of the CIs that were obtained for the illustrative example in the paper (including the method by Biggerstaff and Tweedie, the profile likelihood CIs, the Wald-type CIs, the method by Sidik and Jonkman, and the parametric and non-parametric boostrap CIs).

### July 30th, 2014: New Version Out (1.9-4)

Quite excited to release a new version of the metafor package. Aside from some minor improvements and bug fixes, the most important addition is the generalized Q-statistic estimator for the amount of (residual) heterogeneity (i.e., $\tau^2$) in random- and mixed-effects models. This is a generalization of the DerSimonian and Laird (DL) and the Hedges (HE) estimators and requires specification of user-defined weights (with the DL estimator corresponding to inverse sampling variance weights and the HE estimator to unit weights). When using this estimator, one can also obtain corresponding confidence intervals for $\tau^2$ based on the exact distributional properties of the estimator (based on Dan Jackson's excellent work).

### July 16th, 2014: Testing Factors and Linear Combinations

Added an illustration to the tips and notes section that shows how to test factors and linear combinations of parameters in (mixed-effects) meta-regression models.

### June 3rd, 2014: Two-Stage Analysis Versus Linear Mixed-Effects Models

Added an illustration to the tips and notes section that shows how the results from a mixed-effects model for longitudinal (growth curve) data can be approximated with a two-stage procedure. The latter approach makes use of the rma.mv() function, since essentially the two-stage approach is a (multivariate) meta-analysis of the estimated model coefficients.

### May 22th, 2014: Contributor Section

I added a page to the website with a (probably incomplete) list of people that have in some shape or form contributed to the development of the package. This was long overdue. My apologies for any omissions!

### May 8th, 2014: Paper Views/Citations

A new version of the metafor package (version 1.9-3) is now available via CRAN. This is a pretty extensive update (see the list of package updates), but most notable are the performance enhancements to the rma.mv() function (for multilevel, multivariate, and network meta-analyses) and the possibility to specify arbitrary user-defined weights when fitting models with rma.uni() and rma.mv().﻿