[R-meta] Help with variance stabilizing transformation methods in Metafor
dr.todor.krastev at gmail.com
Wed Jan 17 21:34:18 CET 2018
Thank you for your prompt reply!
It took me some time to fix it and react to your email, but I did manage in
the end to fit the Poisson-normal model as described in Stijnen (2010),
which led to much more logical effect estimates in my meta-analysis.
I didnt quite succeed to work it out with the Meta package due to some
errors in the GLMM function and changed the decimal places manually (x100)
in Metafor to obtain the numbers as %.
As you can see in the attachment, I also obtained the 0.73 value with
Poisson (see attachment).
Also, maybe Wolfgang knows an simpler way to transform Forest plot values
in Metafor also to achieve numbers per 100 pt yrs?
I also checked out the Meta package and does look super neat in the way it
presents the individual study estimates in grey colour (makes the 95%CI
visible in large studies) and also automatically gives you the weighing of
studies and the measure of heterogeneity (all these I had to add manually).
It definitely got my attention and I shall try it out for my next project.
Thank you once again for your great help!
On 11 January 2018 at 18:25, Guido Schwarzer <sc at imbi.uni-freiburg.de>
> Dear Todor,
> I cannot comment (in detail) on using *metafor*, however, using
> transf.ipft.hm() is surely wrong, as this is for back-transformation of
> proportions, not incidence rates. You have to use transf.iirpf() for the
> inverse of the Freeman-Tukey transformation of incidence rates. Note, you
> have to use the function with two "i"s where the first "i" stands for
> "inverse" and the second "i" stands for "incidence". Using transf.irpf()
> with one "i" would be wrong.
> Alternatively, you could use function metarate() from *meta* which does
> the back-transformation automatically for you. Furthermore, metarate() has
> an argument 'irscale' to display results are events per x person-years.
> e.g., 'irscale = 100' to report events per 100 person-years.
> m.irft <- metarate(xi, ti, data = dat, studlab = study, sm = "IRFT",
> method.tau = "PM", irscale = 100, prediction = TRUE)
> forest(m.irft, xlim = c(0, 5))
> As you see in the attached forest plot, there is a problem with the
> Freeman-Tukey (back-)transformation:
> the overall estimates (fixed effect and random effects) are very small
> which does not make much sense. This results from problems with the
> back-transformation in this setting with many studies with zero events.
> Therefore, I would recommend to use a different method for the
> meta-analysis. Personally, I would use metarate() with argument 'method =
> "GLMM"' which conducts a random intercept Poisson regression model (Stijnen
> et al. 2010, section 3.3). Note, metarate() calls rma.glmm() from
> *metafor* internally to conduct the Poisson regression.
> The pooled results for the Poisson regression
> 0.73 events (fixed effect) and 0.70 events (random effects) per 100
> look much more plausible to me than the results for the Freeman-Tukey
> 0.15 events (fixed effect) and 0.16 events (random effects) per 100
> Best wishes,
> Stijnen, T., Hamza, T.H. & Ozdemir, P., 2010, Random effects meta-analysis
> of event outcome in the framework of the generalized linear mixed model
> with applications in sparse data, Statistics in Medicine, 29(29), pp.
> 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 <+49%20761%202036668>
> Mail: sc at imbi.uni-freiburg.de
> Homepage: http://www.imbi.uni-freiburg.de
-------------- next part --------------
An HTML attachment was scrubbed...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Krastev et al - Example figure Metafor.pdf
Size: 3364381 bytes
Desc: not available
More information about the R-sig-meta-analysis