[R-meta] Question on combining means with robumeta

Viechtbauer, Wolfgang (SP) wo||g@ng@v|echtb@uer @end|ng |rom m@@@tr|chtun|ver@|ty@n|
Wed Aug 18 13:59:19 CEST 2021


Dear Tobias,

I don't understand what you mean by "Since in some cases I had negative values". Negative values where?

This aside, 'var.eff.size' is for the *variances* but SEM is the SE of the means. So it should be:

res <- robu(formula = Mean ~ 1, data = dat,
              studynum = Author, var.eff.size =SEM^2,
              rho = .8, small = TRUE, modelweights="CORR")
res

although the results are basically the same.

Second, LogMean_SEM doesn't seem to be computed correctly in your example and let's not call it SEM since it's a variance:

dat$LogMean_Var <- with(dat, SD^2/(N*Mean^2))

Now:

res1 <- robu(formula = LogMean ~ 1, data = dat,
             studynum = Author, var.eff.size =  LogMean_Var,
             rho = .8, small = TRUE, modelweights="CORR")
res1

#backtransformed results from log scale
round(exp(c(res1$reg_table$b.r[[1]],res1$reg_table$CI.L[[1]],res1$reg_table$CI.U[[1]])),2) 

gives very similar results as 'res' earlier.

Best,
Wolfgang

>-----Original Message-----
>From: R-sig-meta-analysis [mailto:r-sig-meta-analysis-bounces using r-project.org] On
>Behalf Of Tobias Saueressig
>Sent: Tuesday, 17 August, 2021 17:48
>To: Meta list
>Subject: [R-meta] Question on combining means with robumeta
>
>Dear All,
>
>I have a question concerning the combination/pooling of means. Since most of my
>studies are correlated I deceided to use robust variance estimation method to do
>this. So metamean function in meta was out because of this. So I used robumeta.
>Since in some cases I had negative values I deceided to use log transformed means
>for pooling. My problem is that the estimates look reasonable now with robumeta
>but the heterogeneity parameters(e.g. Tau, I²) are all estimated with zero. This
>is strange. Does anybody know why that is?
>
>Regards,
>Tobias Saueressig
>
>Reproducible example:
>
>#Example
> Author <-c("Carboch et al. (2019)","Stare et al. (2015)","Mackie (2013)","Hornery
>et al. (2007)",
>"Takahashi et al. ( 2006)","Morante et al. (2005)","O'Donoghue, P. and Ingram, B.
>(2001)",
>"O'Donoghue, P. and Ingram, B. (2001)")
>
> Mean<-c(5.93,4.40,6.42,6.70,5.10,6.40,5.70,4.90)
> SD<-c(0.67,1.73,1.27,2.20,5.19,1.40,1.00,1.40)
> N<-c(7,5,9,17,16,12,24,35)
> SEM<-c(0.25,0.77,0.42,0.53,1.30,0.40,0.20,0.24)
> LogMean<-c(1.78,1.48,1.86,1.90,1.63,1.86,1.74,1.59)
> LogMean_SEM<-c(1.50,3.40,2.72,3.57,6.62,2.59,1.16,1.16)
>
> dat<-data.frame(Author,Mean,SD,N,SEM,LogMean,LogMean_SEM)
>
> #Formulas used
> #SEM<-SD/sqrt(N)
> #LogMean<-log(Mean)
> #LogMean_SEM<-SD^2/(N*Mean^2) => taken from metamean function in meta
>
> #normalscale
> res <- robu(formula = Mean ~ 1, data = dat,
>              studynum = Author, var.eff.size =SEM,
>              rho = .8, small = TRUE, modelweights="CORR")
> res
>
> #logscale
> res1 <- robu(formula = LogMean ~ 1, data = dat,
>             studynum = Author, var.eff.size =  LogMean_SEM,
>             rho = .8, small = TRUE, modelweights="CORR")
> res1
>
> #backtransformed results from log scale
> round(exp(c(res1$reg_table$b.r[[1]],res1$reg_table$CI.L[[1]],res1$reg_table$CI.U[
>[1]])),2)


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