Mediation {brainGraph}R Documentation

Mediation analysis with brain graph measures as mediator variables

Description

brainGraph_mediate performs simple mediation analyses in which a given graph- or vertex-level measure (e.g., weighted global efficiency) is the mediator M. The outcome (or dependent/response) variable Y can be a neuropsychological measure (e.g., IQ) or can be a disease-specific metric (e.g., recovery time).

bg_to_mediate converts the results into an object of class mediate. In brainGraph, it is only used for the summary.mediate method, but you can similarly use its output for the plot.mediate method.

Usage

brainGraph_mediate(g.list, covars, mediator, treat, outcome, covar.names,
  level = c("graph", "vertex"), control.value = 0, treat.value = 1,
  int = FALSE, boot = TRUE, boot.ci.type = c("perc", "bca"),
  N = 1000, conf.level = 0.95, long = FALSE, ...)

## S3 method for class 'bg_mediate'
summary(object, mediate = FALSE, region = NULL,
  digits = max(3L, getOption("digits") - 2L), ...)

bg_to_mediate(x, region = NULL)

Arguments

g.list

A brainGraphList object

covars

A data table containing covariates of interest. It must include columns for getOption('bg.subject_id'), treat, outcome, and covar.names.

mediator

Character string; the name of the graph measure acting as the mediating variable

treat

Character string; the treatment variable (e.g., Group)

outcome

Character string; the name of the outcome variable of interest

covar.names

Character vector of the column name(s) in covars to include in the models as pre-treatment covariate(s).

level

Character string; either vertex (default) or graph

control.value

Value of treat to be used as the control condition. Default: 0

treat.value

Value of treat to be used as the treatment condition. Default: 1

int

Logical indicating whether or not to include an interaction of the mediator and treatment. Default: FALSE

boot

Logical indicating whether or not to perform bootstrapping. This should always be done. Default: TRUE

boot.ci.type

Character string; which type of CI's to calculate. Default: perc

N

Integer; the number of bootstrap samples to run. Default: 1e3

conf.level

Numeric between 0 and 1; the level of the CI's to calculate. Default: 0.95 for the 2.5 and 97.5 percentiles)

long

Logical indicating whether or not to return all bootstrap samples. Default: FALSE

...

Other arguments passed to brainGraph_GLM_design (e.g., binarize) (unused in the summary method)

object

A bg_mediate object

mediate

Logical indicating whether or not to use the summary method from mediate (default: FALSE). If TRUE, only a single region can be printed.

region

Character string specifying which region's results to summarize; only relevant if level='vertex' (default: NULL)

digits

Integer specifying the number of digits to display for P-values

x

Object output from brainGraph_mediate

Details

This code was adapted closely from mediate in the mediation package, and the procedure is exactly the same as theirs (see the references listed below). If you use this function, please cite their work.

Value

An object of class bg_mediate with elements:

level

Either graph or vertex.

removed.subs

A character vector of Study.ID's removed due to incomplete data

X.m, X.y

Design matrix and numeric array for the model with the mediator as the outcome variable (X.m) and for the model with the mediator as an additional predictor (X.y), respectively

y.m, y.y

Outcome variables for the associated design matrices above. y.m will be a matrix of size # subj. X # regions

res.obs

A data.table of the observed values of the point estimates.

res.ci

A data.table of the confidence intervals for the effect estimates.

res.p

A data.table of the two-sided p-values for the effect estimates

boot

Logical, the boot argument.

boot.ci.type

Character string indicating which type of bootstrap confidence intervals were calculated.

res.boot

A data.table with N rows of the bootstrap results for all effects.

treat

Character string of the treatment variable.

mediator

Character string of the mediator variable.

outcome

Character string of the outcome variable.

covariates

Returns NULL; not used in this package.

INT

Logical indicating whether the models included an interaction between treatment and mediator.

conf.level

The confidence level.

control.value

The value of the treatment variable used as the control condition.

treat.value

The value of the treatment variable used as the treatment condition.

nobs

Integer; the number of observations in the models.

sims

Integer; the number of bootstrap replications.

covar.names

The pre-treatment covariate names.

bg_to_mediate returns an object of class mediate

Note

As of brainGraph v2.0.0, this function has been tested only for a treatment (independent) variable X being a factor (e.g., disease group, old vs. young, etc.). If your treatment variable has more than 2 levels, then you must explicitly specify the levels you would like to compare; otherwise, the baseline and first levels are taken to be the control and treatment values, respectively. Be aware that these are 0 indexed; that is, if you have 3 groups and you would like the treatment group to be the 3rd, you should specify as either the group's character string or as treat.value=2.

Allowing for treatment-mediator interaction (setting int=TRUE) currently will only work properly if the mediator is a continuous variable; since the mediator is always a graph metric, this should always be the case.

Author(s)

Christopher G. Watson, cgwatson@bu.edu

References

Tingley, D. and Yamamoto, T. and Hirose, K. and Keele, L. and Imai, K. (2014) mediation: R package for causal mediation analysis. Journal of Statistical Software, 59(5), 1–38. https://dx.doi.org/10.18637/jss.v059.i05

Imai, K. and Keele, L. and Yamamoto, T. (2010) Identification inference, and sensitivity analysis for causal mediation effects. Statistical Science, 25(1), 51–71. https://dx.doi.org/10.1214/10-STS321

Imai, K. and Keele, L. and Tingley, D. (2010) A general approach to causal mediation analysis. Psychological Methods, 15(4), 309–334. https://dx.doi.org/10.1037/a0020761

Imai, K. and Keele, L. and Tingley, D. and Yamamoto, T. (2011) Unpacking the black box of causality: learning about causal mechanisms from experimental and observational studies. American Political Science Review, 105(4), 765–789. https://dx.doi.org/10.1017/S0003055411000414

Imai, K. and Yamamoto, T. (2013) Identification and sensitivity analysis for multiple causal mechanisms: revisiting evidence from framing experiments. Political Analysis, 21(2), 141–171. https://dx.doi.org/10.1093/pan/mps040

See Also

mediate

Other Group analysis functions: Bootstrapping, GLM, NBS, brainGraph_permute, mtpc

Examples

## Not run: 
med.EglobWt.FSIQ <- brainGraph_mediate(g[[5]], covars.med, 'E.global.wt',
  'Group', 'FSIQ', covar.names=c('age', 'gender'), N=1e4)
med.strength.FSIQ <- brainGraph_mediate(g[[5]], covars.med, 'strength',
  'Group', 'FSIQ', covar.names=c('age', 'gender'), level='vertex')

## End(Not run)

[Package brainGraph version 3.0.0 Index]