[R-meta] Post-hoc weighted analysis based on number of observations

Viechtbauer Wolfgang (SP) wolfgang.viechtbauer at maastrichtuniversity.nl
Sun Feb 4 13:40:03 CET 2018

Just to follow-up on this briefly, see my responses further below.


>-----Original Message-----
>From: Cesar Terrer Moreno [mailto:cesar.terrer at me.com]
>Sent: Tuesday, 30 January, 2018 18:44
>To: Viechtbauer Wolfgang (SP)
>Cc: r-sig-meta-analysis at r-project.org
>Subject: Re: [R-meta] Post-hoc weighted analysis based on number of
>Dear Wolfgang,
>I have the feeling that spatial uncertainty would help defining
>uncertainty based on the geographical distance among the coordinates of
>the individual locations of the studies in the dataset.
>However, in this case I think a simpler approach could suffice. For this
>particular matter, we could assume that a good representation of the
>different “behaviours” of the system can be achieved through sampling
>intensively all types of biomes on Earth (e.g. grasslands, tropical
>forests, temperate forests, boreal forests), thus biomes as the unit of
>variability among studies.
>In this case, ‘biome’ is not a significantly important predictor, but
>this could be just the result of the low sample size in some biomes (or
>not). In any case, we have to somehow account for the low sample size in
>some biomes, allowing us to report the effect size is poorly sampled
>biomes yet with a very large uncertainty. This distinction between
>geographical uncertainty and biome representation is important, because
>with biome as a driver of uncertainty we can assume that e.g. uncertainty
>in a grassland in China should be low despite no sampling in Chinese
>grasslands, just because there are many other studies with grasslands in
>Europe, Australia and US. However, uncertainty in a tropical forest in
>Brazil should be large because there are very few tropical forests in the
>dataset, even if there are many grassland studies in Brazil in the
>dataset. This is the type of biome-driven uncertainty we need.
>Having said that, I don’t know how to account for this biome-driven
>I have tried to include ‘Biome’ as a random effect in the model:
>meta <- rma.mv(es, var, data=df, method="ML", random= ~1|Biome, mods= ~ 1
>+ precipitation + temperature)

In rma.mv(), you have to specify all random effects you want to include. You were fitting RE models earlier, which have a random effect corresponding to each row of the dataset. If you want to include 'Biome' as a random effect, you have to *add this* on top of the random effect for each row. So if anything, it should be:

dat$id <- 1:nrow(df)
meta <- rma.mv(es, var, data=df, method="ML", random= ~1|Biome/id, mods= ~ 1 + precipitation + temperature)

See: http://www.metafor-project.org/doku.php/analyses:konstantopoulos2011#a_common_mistake_in_the_three-level_model

>As I have data for temperature, precipitation, and biome type for
>virtually all points on Earth, I have upscaled this effect and standard
>error (SE) globally, creating a gridded map of the effect and SE:
>pred <- predict(meta, newmods = cbind(s.df$precipitation,
>random= ~1|s.df$Biome)

predict() does not have a 'random' argument, so "random= ~1|s.df$Biome" does nothing.

>SEraster <- rasterFromXYZ(pred[,c("x", "y", "se")],crs="+proj=longlat
>+datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0”) # x and y are the
>coordinates in each cell
>However, the resulting raster of the SE of the effect is quite similar to
>the raster obtained with the model without the random effect, thus with
>low SE even in biomes that are poorly sampled (e.g. tropical forests).
>Why? How can I create a model where SEs are higher in regions with low
>biome representation?

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