[R-meta] Dealing with missing variance in multilevel models: using number of replicates instead in ecological meta-analysis

Gabriele Midolo gabriele.midolo at gmail.com
Fri Oct 6 11:25:03 CEST 2017


Dear all,

Do you think it is possible to perform a multilevel meta-analysis without
sampling variance (from both the conceptual and the statistical point of
view), using only the number of replicates to weight the importance of
studies?

I am using mean species abundance (MSA) as effect size, a quite unusual
metric for biodiversity intactness in ecological meta-analysis (see an
example in Benítez-López et al., 2010
<http://serengetiwatch.org/wp-content/uploads/2010/08/Benitez_lopez-et-al_Roads_2010.pdf>).
MSA is the mean of the response ratio of abundance values
(Treatment/Control) for each individual species in a given ecological
experiment/study. However, individual ratios are truncated at 1 if
Treatment>Control, so MSA ranges between 0 and 1.

Few studies included in my analysis report values of SD in the treatment
and control plots. Additionaly, the type of data I am working with makes
quite difficult -impossible, to my knowledge - to apply imputation
techniques to estimate variance. However, all the studies included in the
analysis report at least the number of replicates.

Some of my co-authors suggested to weight the meta-analysis by the number
of replicates, instead to limit the analysis to an "unweighted
meta-analysis".
Assuming this makes sense to you as well, how can I implement this in
metafor?

So far I am trying to arbitrarily assign the same variance to each study
vi=1 and then use the W term to weight the importance by the number of
replicates. Something like the following:

dat$vi<-1
res <- rma.mv(MSA, vi, W=Replicates, random =~1|Experiment/ID, data=dat)

However, probably better, I am trying to fit something similar to a
meta-analytic model with the following:

lme(MSA~1, random =~1|Experiment/ID, weights=varIdent(~Replicates),
data=dat)

I am aware - based on Wolfgang's website - that fitting via lme() is not
really the same than using 'rma.mv()' but maybe the latter is a more
suitable model I am looking for given my specific case (?).

(sorry - my first post here - let me know if I can share the data with you
or if I missed something)

	[[alternative HTML version deleted]]



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