[R-meta] Funnel plot with Egger regression test, using R

Guido Schwarzer @c @ending from imbi@uni-freiburg@de
Thu Nov 29 14:17:54 CET 2018

Am 29.11.18 um 10:28 schrieb Michael Dewey:

> Dear Margot
> Unless you absolutely need the meta-analysis too
> library(metafor)
> funnel(yi = yi, sei = sei)
> regtest(yi = yi, sei = sei)
As a sidenote, these commands result in two errors as there is no 
argument 'yi' in the functions funnel and regtest. The following code 
works: (*)
y <- -1:8 - 0.5
se <- se <- 1:10 / 5
funnel(y, sei = se)
regtest(y, sei = se)

However, the main purpose of my post is to promote the use of funnel 
plots already showing some meta-analysis results.

The attached funnel plot using R package meta was created with the commands
funnel(metagen(y, se, sm = "MD"), contour.level = 0.95, col.contour = 

You can get a similar funnel plot with metafor: (**)
funnel(rma(yi = y, sei = se, method = "FE"))

This funnel plot shows

1) estimates of the fixed effect (dashed vertical line) and random 
effects model (dotted vertical line)

2) approximate 95% confidence limits under the fixed effect model 
(dashed triangle)

3) area of statistically significant (lightgray, p < 0.05) and 
non-significant (white) results

Ad 1)
Results of fixed effect and random effects estimate are very different 
which is already an indication of funnel plot asymmetry / small study 
effects, i.e., study results of smaller studies differ systematically 
from larger studies.

Ad 2)
Eight of 10 estimates are outside of the approximate 95% confidence 
interval (CI). This is a clear indication of substantial between-study 
heterogeneity (under the fixed effect model, we would expect that 5%, 
i.e., "half a study", lies outside the approximate CI).

Ad 3)
A contour-enhanced funnel plot (Peters et al., 2008) was created by 
using arguments 'contour.level' and 'col.contour' which may help to 
decide whether funnel plot asymmetry / small study effects is due to 
selective publication or reporting of statistically significant results, 
aka "publication bias" or "selective outcome reporting bias". In the 
example, the seven most imprecise estimates lie all in the lightgray 
area, i.e., were statistically significant at the conventional 
significance level, p < 0.05 (which is an indication of publication or 
reporting bias). Note, you can get these contours without conducting a 

In my view, it is perfectly OK to look at and even published the 
attached funnel plot with some meta-analysis results and to not report 
the results of a meta-analysis (in this case due to substantial funnel 
plot asymmetry and between-study heterogeneity). One advantage of the 
funnel plot is that you only see the meta-analysis estimates without 
confidence intervals, i.e., whether the fixed effect or random effects 
meta-analysis is significant remains unclear. (***)

Best wishes, Guido

Peters JL, Sutton AJ, Jones DR, Abrams KR, Rushton L. Contour-enhanced 
meta-analysis funnel plots help distinguish publication bias from other 
causes of asymmetry. Journal of Clinical Epidemiology. 2008;61(10):991–6

(*) You could also create a very basic funnel plot without conducting a 
meta-analysis using R package meta: meta::funnel(y, se)

(**) I am not sure whether it is possible in metafor to show both the 
approximate 95% CI and the contours in a funnel plot.

(***) Actually, in this toy example both fixed effect and random effects 
results are statistically significant - in opposite directions. ;-)

Dr. Guido Schwarzer
Institute of Medical Biometry and Statistics,
Faculty of Medicine and Medical Center - University of Freiburg

Postal address: Stefan-Meier-Str. 26, D-79104 Freiburg

Phone: +49/761/203-6668
Mail: sc using imbi.uni-freiburg.de
Homepage: http://www.imbi.uni-freiburg.de

-------------- next part --------------
A non-text attachment was scrubbed...
Name: funnel-toy-example.pdf
Type: application/pdf
Size: 15333 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-sig-meta-analysis/attachments/20181129/103f646f/attachment.pdf>

More information about the R-sig-meta-analysis mailing list