i2_ml: i2_ml

View source: R/i2_ml.R

i2_mlR Documentation

i2_ml

Description

I2 (I-squared) for mulilevel meta-analytic models, based on Nakagawa & Santos (2012). Under multilevel models, we can have multiple I2 (see also Senior et al. 2016). Alternatively, the method proposed by Wolfgang Viechtbauer can also be used.

Usage

i2_ml(model, method = c("ratio", "matrix"), boot = NULL)

Arguments

model

Model object of class rma.mv or rma. Currently only model objects using the mods argument work (e.g., mod = ~1).

method

Method used to calculate I2. Two options exist: a ratio-based calculation proposed by Nakagawa & Santos ("ratio"), or Wolfgang Viechtbauer's matrix method ("matrix").

boot

Number of simulations to run to produce 95 percent confidence intervals for I2. Default is NULL, where only the point estimate is provided.

Value

A data frame containing all the model results including mean effect size estimate, confidence, and prediction intervals

Author(s)

Shinichi Nakagawa - s.nakagawa@unsw.edu.au

Daniel Noble - daniel.noble@anu.edu.au

References

Senior, A. M., Grueber, C. E., Kamiya, T., Lagisz, M., O’Dwyer, K., Santos, E. S. A. & Nakagawa S. 2016. Heterogeneity in ecological and evolutionary meta-analyses: its magnitudes and implications. Ecology 97(12): 3293-3299. Nakagawa, S, and Santos, E.S.A. 2012. Methodological issues and advances in biological meta-analysis.Evolutionary Ecology 26(5): 1253-1274.

Examples

## Not run: 
# IMPORTANT NOTE ** boot = 10 is set LOW deliberately to make the models run fast. You should always run for at least boot = 1000
# English example
data(english)
english <- escalc(measure = "SMD", n1i = NStartControl,
sd1i = SD_C, m1i = MeanC, n2i = NStartExpt, sd2i = SD_E,
m2i = MeanE, var.names=c("SMD","vSMD"),data = english)
english_MA <- rma.mv(yi = SMD, V = vSMD,
random = list( ~ 1 | StudyNo, ~ 1 | EffectID), data = english)
I2_eng_1 <- i2_ml(english_MA, data = english, boot = 10)
I2_eng_2 <- i2_ml(english_MA, data = english, method = "ratio")
I2_eng_3 <- i2_ml(english_MA, data = english, method = "matrix")

## Fish example
data(fish)
warm_dat <- fish
model <- metafor::rma.mv(yi = lnrr, V = lnrr_vi,
random = list(~1 | group_ID, ~1 | es_ID),
mods = ~ experimental_design + trait.type + deg_dif + treat_end_days,
method = "REML", test = "t", data = warm_dat,
control=list(optimizer="optim", optmethod="Nelder-Mead"))
I2_fish_1 <- i2_ml(model, data = warm_dat, boot = 10)
I2_fish_2 <- i2_ml(model, method = c("matrix"),data = warm_dat)
I2_fish_2 <- i2_ml(model, method = c("ratio"),data = warm_dat)

# Lim example
data(lim)
# Add in the sampling variance
lim$vi<-(1/sqrt(lim$N - 3))^2
# Lets fit a meta-regression - I will do Article non-independence.
The phylogenetic model found phylogenetic effects, however, instead we could fit Phylum as a fixed effect and explore them with an Orchard Plot
lim_MR<-metafor::rma.mv(yi=yi, V=vi, mods=~Phylum-1, random=list(~1|Article, ~1|Datapoint), data=lim)
I2_lim_1 <- i2_ml(lim_MR, data=lim, boot = 10)
I2_lim_2 <- i2_ml(lim_MR, data=lim)

## End(Not run)

daniel1noble/orchaRd documentation built on May 12, 2024, 7:46 a.m.