[R-meta] Ratio of Means
Michael Dewey
lists at dewey.myzen.co.uk
Fri Jul 21 13:01:11 CEST 2017
Dear Nathan
Try using the data parameter rather than attaching arm.df.
Alternatively call the standard deviation something other than sd.
On 20/07/2017 22:17, Nathan Pace wrote:
> Hi,
>
> Thanks for the pointers and links.
>
> Next problem is using the measure = “MNLN” in escalc.
>
> I created the 2k data frame.
>
>> arm.df
> study group mean sd n
> 1 Arici 2009 Exp 35.73 5.24 27
> 2 Arici 2009 Ctl 62.93 8.67 27
> 3 Arslan 2011 Exp 4.25 2.03 20
> 4 Arslan 2011 Ctl 11.25 5.03 20
> 5 Arslan 2013 Exp 5.15 4.29 100
> 6 Arslan 2013 Ctl 9.1 4.68 100
> 7 Aydogan 2008 Exp 0.27 0.08 40
> 8 Aydogan 2008 Ctl 0.35 0.09 40
> 9 Cakan 2008 Exp 11 2 20
> 10 Cakan 2008 Ctl 12 2 20
> 11 Cobby 1999 Exp 35 20.4 24
> 12 Cobby 1999 Ctl 54.9 28.3 21
> 13 Dahl 1997 Exp 21.2 7.88 22
> 14 Dahl 1997 Ctl 18.7 5.9 21
> 15 Dilmen 2010 Exp 18.1 13.93 20
> 16 Dilmen 2010 Ctl 30 11.32 19
> 17 Durmus 2007 Exp 30.5 11.55 25
> 18 Durmus 2007 Ctl 42.74 12.33 25
> 19 Emir 2010 Exp 7.65 0.78 30
> 20 Emir 2010 Ctl 13.8 2.26 30
> 21 Fayaz 2004 Exp 12 6 17
> 22 Fayaz 2004 Ctl 22 13 17
> 23 Jokela 2010 Exp 38.85 16.8 40
> 24 Jokela 2010 Ctl 45.15 18.9 40
> 25 Khalili 2013 Exp 3 2.28 25
> 26 Khalili 2013 Ctl 4.2 1.57 25
> 27 Kilieaslan 2010 Exp 20.56 0.4 25
> 28 Kilieaslan 2010 Ctl 28.6 0.35 25
> 29 Koppert 2006 Exp 17 22 25
> 30 Koppert 2006 Ctl 38 22 25
> 31 Kvalsvik 2003 Exp 16 5 30
> 32 Kvalsvik 2003 Ctl 20 6 30
> 33 Montgomery 1996 Exp 27.1 27 19
> 34 Montgomery 1996 Ctl 34.5 15.1 20
> 35 Moon 2011 Exp 8.7 5.4 36
> 36 Moon 2011 Ctl 12.6 6.9 35
> 37 Munishankar 2008 Exp 33.8 23.8 25
> 38 Munishankar 2008 Ctl 44.1 24.4 25
> 39 Sinatra 2005 Exp 38.3 35.1 49
> 40 Sinatra 2005 Ctl 57.4 52.3 52
> 41 Syal 2010 Exp 9.53 1.88 30
> 42 Syal 2010 Ctl 10.19 2.08 30
> 43 Toygar 2008 Exp 16.5 11.1 30
> 44 Toygar 2008 Ctl 34.3 11.8 30
> 45 Yalcin 2012 Exp 48.53 12.4 26
> 46 Yalcin 2012 Ctl 73.03 22.41 27
>
> The call to escalc returned an error:
>
>> arm.df <- escalc(measure = 'MNLN', mi = mean, sdi = sd, ni = n)
> Error in sdi < 0 :
> comparison (3) is possible only for atomic and list types
>
> ?????
>
>
> Nathan
>
>
> -----Original Message-----
> From: "Viechtbauer Wolfgang (SP)" <wolfgang.viechtbauer at maastrichtuniversity.nl>
> Date: Thursday, July 20, 2017 at 02:08
> To: "r-sig-meta-analysis at r-project.org" <r-sig-meta-analysis at r-project.org>
> Cc: James Pustejovsky <jepusto at gmail.com>, Nathan L Pace <n.l.pace at utah.edu>
> Subject: RE: [R-meta] Ratio of Means
>
> As for using the control group value as a moderator in a meta-regression model: The same concerns apply (actually, most of the papers on that issue were concerned with binomial outcomes and measures like the risk difference/ratio and the odds ratio, but the same concerns apply whether we are dealing with those types of measures or things like mean differences or response ratios).
>
> A relatively straightforward way of examining the relationship between the control and treatment group value is the bivariate model. See, for example:
>
> van Houwelingen, H. C., Arends, L. R., & Stijnen, T. (2002). Advanced methods in meta-analysis: Multivariate approach and meta-regression. Statistics in Medicine, 21(4), 589-624.
>
> The analyses from that paper are also reproduced here:
>
> http://www.metafor-project.org/doku.php/analyses:vanhouwelingen2002
>
> I do not go into the 'baseline risk' part of the analysis on that page, but once you have fitted the bivariate model, the rest is easy:
>
> [...]
>
> ### bivariate model
> res <- rma.mv(yi, vi, mods = ~ group - 1, random = ~ group | trial, struct="UN", data=dat.long, method="ML")
> res
>
> ### var-cov matrix of the random effects
> res$G
>
> ### slope of regression of the underlying true log odds in treatment groups on the log odds in control groups
> with(res, G["EXP","CON"] / G["CON","CON"]) ### ~ 0.730 (see page 605 in article)
>
> ### standard error of the slope (not given in paper)
> r <- with(res, G["EXP","CON"] / sqrt(G["EXP","EXP"] * G["CON","CON"]))
> sqrt(with(res, G["EXP","EXP"]/G["CON","CON"] * (1-r^2) / (res$g.levels.comb.k - 2)))
>
> So that relationship is highly significant here.
>
> One can do the same with response ratios. So, for the bivariate model, you analyze the log(m1i) and log(m2i). You will find that (since version 2.0-0) escalc() has measure="MNLN" (log transformed mean) for exactly that purpose.
>
> Best,
> Wolfgang
>
> --
> Wolfgang Viechtbauer, Ph.D., Statistician | Department of Psychiatry and
> Neuropsychology | Maastricht University | P.O. Box 616 (VIJV1) | 6200 MD
> Maastricht, The Netherlands | +31 (43) 388-4170 | http://www.wvbauer.com
>
> -----Original Message-----
> From: James Pustejovsky [mailto:jepusto at gmail.com]
> Sent: Thursday, July 20, 2017 00:19
> To: Nathan Pace
> Cc: Viechtbauer Wolfgang (SP); r-sig-meta-analysis at r-project.org
> Subject: Re: [R-meta] Ratio of Means
>
> Nathan,
>
> I don't know the answer to your question exactly, but I would offer two suggestions that might help you find a good approach for meta-analysis:
>
> First, many clinical studies are woefully sloppy about distinguishing between sample standard deviations versus standard errors (which might be reported if the sample means are estimated with adjustment for baseline covariates). If you have not already done so, it might be worth double checking that your data are truly the raw sample standard deviations. If some of them are actually SEs, then the effect size variances will be under-estimated by a substantial factor, and this in turn might account for the high degree of observed heterogeneity.
>
> Second, are the outcomes (average drug doses) on a scale that is directly comparable across studies? If so, either an unstandardized mean difference or a response ratio could be an appropriate effect size metric. To determine which metric to use, you might try creating a scatterplot with control group means on the x axis and treatment group means on the y axis. If the scatter resembles a 45-degree line that does not intercept the origin, then the unstandardized mean difference might be a better summary. If the scatter resembles a line (with higher or lower slope) through the origin, then the response ratio might be a better summary.
>
> James
>
> On Wed, Jul 19, 2017 at 5:05 PM, Nathan Pace <n.l.pace at utah.edu> wrote:
> The outcomes in my example are average drug doses under an experimental and a control condition, so ratio scale measurements.
>
> In a RoM meta analysis there is very high heterogeneity (I2 = 94%).
>
> There is interest in whether a control group mean value as a moderator will improve the model and reduce the heterogeneity.
>
> Adding this moderator does not improve the model or reduce heterogeneity.
>
> It is generally recommended to not use a control group value as a moderator in meta regression of the mean difference (various papers by Sharp, etc).
>
> Does this recommendation still apply when the study values have been transformed into the RoM and not using the mean difference?
>
> Does this require a different model or a Bayesian meta regression?
>
> Your insights are much appreciated.
>
> Nathan
>
>
> _______________________________________________
> R-sig-meta-analysis mailing list
> R-sig-meta-analysis at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-meta-analysis
>
> ---
> This email has been checked for viruses by AVG.
> http://www.avg.com
>
--
Michael
http://www.dewey.myzen.co.uk/home.html
More information about the R-sig-meta-analysis
mailing list