top of page

Multivariate Meta-analysis (II)

Reference: Chen, Y, Hong, C and Riley, R. (2015) An alternative pseudolikelihood method for multivariate random-effects meta-analysis, Statistics in Medicine 34 (3): 361-380.


Recently, multivariate random-effects meta-analysis models have received a great deal of attention, despite its greater complexity compared to those for univariate meta-analysis. One of its advantages is the ability to account for within-study and between-study correlations. However, the standard inference procedures, such as the maximum likelihood or maximum restricted likelihood inference, require the within-study correlations, which are usually unavailable. In addition, the standard inference procedures suffer from the estimation issues such as non-convergent iterations or a singular estimated covariance matrix.

In this paper, we propose a pseudolikelihood method to overcome the aforementioned problem when outcome data are complete or missing completely at random (MCAR), and interest is in functions of the pooled estimates. The pseudolikelihood method does not require within-study correlations and is not prone to non-convergence or a singular covariance matrix problem. In addition, it can properly estimate the covariance between pooled estimates for different outcomes, which enables valid inference on functions of pooled estimates, and can be applied to meta-analysis where some studies have outcomes MCAR.


R Packages and Analysis Functions

In this paper, we analyze the example data using the proposed "Composite Likelihood" method in R.


The proposed method is implemented in the ’mmeta’ function in our R software package ‘xmeta’, and can be installed from CRAN (, the official R package archive. Make sure that you load them before trying to run the examples on this page. If you do not have the package installed, run: 




Before running the SPLUS/R program code to fit the pseudo-REML method, you need to have the following two package in your R package repository:


Then, the following function can be directly used to analyze meta-analysis data:



  • mydat: data of n rows and 4 columns, where n is the number of studies and 4 columns are Yi1 (effect size of outcome 1), Si1^2(variance of Yi1), Yi2(effect size of outcome 2), Si2^2(variance of Yi2)



  • estim: point estimates of (beta1, tau1^2, beta2, tau2^2)

  • cov.estim: covariance matrix of the point estimates

Implementation of Working Example

In this working example, we explore the comparison between overall survival and disease-free survival for prostate cancer Log-hazard ratio estimates comparing combined therapy using Goserelin acetate with radiotherapy with respect to the overall survival (Yi1) and that with respect to disease-free survival (Yi2).


To obtain the point estimates and covariance estimate, you need to run:

The result is:

The model based standard errors of beta1, beta2 and (beta1-beta2):

And you will get:

bottom of page