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 |
covars |
A data table containing covariates of interest. It must include
columns for |
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 |
level |
Character string; either |
control.value |
Value of |
treat.value |
Value of |
int |
Logical indicating whether or not to include an interaction of the
mediator and treatment. Default: |
boot |
Logical indicating whether or not to perform bootstrapping. This
should always be done. Default: |
boot.ci.type |
Character string; which type of CI's to calculate.
Default: |
N |
Integer; the number of bootstrap samples to run. Default:
|
conf.level |
Numeric between 0 and 1; the level of the CI's to
calculate. Default: |
long |
Logical indicating whether or not to return all bootstrap
samples. Default: |
... |
Other arguments passed to |
object |
A |
mediate |
Logical indicating whether or not to use the |
region |
Character string specifying which region's results to
summarize; only relevant if |
digits |
Integer specifying the number of digits to display for P-values |
x |
Object output from |
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 |
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 ( |
y.m , y.y |
Outcome variables for the associated design matrices above.
|
res.obs |
A |
res.ci |
A |
res.p |
A |
boot |
Logical, the |
boot.ci.type |
Character string indicating which type of bootstrap confidence intervals were calculated. |
res.boot |
A |
treat |
Character string of the treatment variable. |
mediator |
Character string of the mediator variable. |
outcome |
Character string of the outcome variable. |
covariates |
Returns |
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. doi: 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. doi: 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. doi: 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. doi: 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. doi: 10.1093/pan/mps040
See Also
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)