[R] Meta-Analyisis on Correlations

Bernd Weiss bernd.weiss at uni-koeln.de
Fri Feb 13 13:12:41 CET 2009


Sebastian Stegmann schrieb:

[...]

> The R packages "meta" and "rmeta" are, as far as I can see, set up for
> analysis with effect sizes for differences (i.e. comparison of the
> means/odds-ratios of experimental and control group). 
> 
> Only the function "metagen" from the "meta"-package looks like it would work
> with correlations. The problem here: One would need to know the standard
> error of the correlation. The SE is not usually reported in the studies I
> have (only means, SDs and Alphas for the single variables). So the SE would
> have to be calculated somehow... But maybe "metagen" is the wrong function
> to start with in the first place?

Dear Sebastian,

Have a look at the psychometric package which is capable of doing 
meta-analysis of correlations.

In most cases you use Fisher-z transformed correlation coefficients. For 
that purpose, the psychometric package offers the function r2z().

Given that you know the number of cases N, the standard error can be 
easily computed as se_z = sqrt(1/(N-3)) (see also 
<http://rss.acs.unt.edu/Rdoc/library/psychometric/html/SEz.html>).

Once you have computed Fisher's-z transformed r's and appropriate 
standard errors, it shouldn't be a problem to use the metagen-function.

However be aware that the psychometric package does not use Fisher's-z 
transformed effect sizes when computing an overall effect size (as far 
as I have understood checking the source of rbar() ... which is somewhat 
strange... Mmmh).

A quick replication of Hedges/Olkin's (1985) analysis (p. 231f; z_total 
= 0.469) revealed that metagen's computations are correct:


library(meta)
library(psychometric)

## table 2, p. 232
n <- c(20,30,27,42,49,12,17,35,38,40)
r <- c(0.41,0.53,0.51,0.43,0.37,0.39,0.45,0.40,0.36,0.52)

z <- r2z(r)
se.z <- 1/sqrt((n-3))

metagen(TE = z, seTE = se.z)

[... some output omitted ...]

                                        95%-CI      z  p.value
Fixed effect model   0.4686  [0.3515; 0.5857] 7.8415 < 0.0001
Random effects model 0.4686  [0.3515; 0.5857] 7.8415 < 0.0001

> I'm wondering whether there might be anyone knowing how to conduct a
> meta-analysis based on correlations in R? 

Feel free to ask if you have any further questions.

Bernd


Hedges, Larry V., und Ingram Olkin, 1985: Statistical Methods for 
Meta-Analysis. Orlando: Academic Press.




More information about the R-help mailing list