Standardized Total, Direct, and Indirect Effects of X on Y Through M Over a Specific Time Interval or a Range of Time Intervals
Source:R/cTMed-med-std.R
MedStd.Rd
This function computes the standardized total, direct, and indirect effects of the independent variable \(X\) on the dependent variable \(Y\) through mediator variables \(\mathbf{m}\) over a specific time interval \(\Delta t\) or a range of time intervals using the first-order stochastic differential equation model's drift matrix \(\boldsymbol{\Phi}\) and process noise covariance matrix \(\boldsymbol{\Sigma}\).
Arguments
- phi
Numeric matrix. The drift matrix (\(\boldsymbol{\Phi}\)).
phi
should have row and column names pertaining to the variables in the system.- sigma
Numeric matrix. The process noise covariance matrix (\(\boldsymbol{\Sigma}\)).
- delta_t
Numeric. Time interval (\(\Delta t\)).
- from
Character string. Name of the independent variable \(X\) in
phi
.- to
Character string. Name of the dependent variable \(Y\) in
phi
.- med
Character vector. Name/s of the mediator variable/s in
phi
.- tol
Numeric. Smallest possible time interval to allow.
Value
Returns an object
of class ctmedmed
which is a list with the following elements:
- call
Function call.
- args
Function arguments.
- fun
Function used ("MedStd").
- output
A matrix of total, direct, and indirect effects.
Details
See TotalStd()
,
DirectStd()
, and
IndirectStd()
for more details.
References
Bollen, K. A. (1987). Total, direct, and indirect effects in structural equation models. Sociological Methodology, 17, 37. doi:10.2307/271028
Deboeck, P. R., & Preacher, K. J. (2015). No need to be discrete: A method for continuous time mediation analysis. Structural Equation Modeling: A Multidisciplinary Journal, 23 (1), 61–75. doi:10.1080/10705511.2014.973960
Ryan, O., & Hamaker, E. L. (2021). Time to intervene: A continuous-time approach to network analysis and centrality. Psychometrika, 87 (1), 214–252. doi:10.1007/s11336-021-09767-0
See also
Other Continuous Time Mediation Functions:
DeltaBeta()
,
DeltaBetaStd()
,
DeltaIndirectCentral()
,
DeltaMed()
,
DeltaMedStd()
,
DeltaTotalCentral()
,
Direct()
,
DirectStd()
,
ExpCov()
,
ExpMean()
,
Indirect()
,
IndirectCentral()
,
IndirectStd()
,
MCBeta()
,
MCBetaStd()
,
MCIndirectCentral()
,
MCMed()
,
MCMedStd()
,
MCPhi()
,
MCTotalCentral()
,
Med()
,
PosteriorBeta()
,
PosteriorIndirectCentral()
,
PosteriorMed()
,
PosteriorPhi()
,
PosteriorTotalCentral()
,
Total()
,
TotalCentral()
,
TotalStd()
,
Trajectory()
Examples
phi <- matrix(
data = c(
-0.357, 0.771, -0.450,
0.0, -0.511, 0.729,
0, 0, -0.693
),
nrow = 3
)
colnames(phi) <- rownames(phi) <- c("x", "m", "y")
sigma <- matrix(
data = c(
0.24455556, 0.02201587, -0.05004762,
0.02201587, 0.07067800, 0.01539456,
-0.05004762, 0.01539456, 0.07553061
),
nrow = 3
)
# Specific time interval ----------------------------------------------------
MedStd(
phi = phi,
sigma = sigma,
delta_t = 1,
from = "x",
to = "y",
med = "m"
)
#>
#> Total, Direct, and Indirect Effects
#>
#> interval total direct indirect
#> [1,] 1 -0.0936 -0.2503 0.1567
# Range of time intervals ---------------------------------------------------
med <- MedStd(
phi = phi,
sigma = sigma,
delta_t = 1:30,
from = "x",
to = "y",
med = "m"
)
plot(med)
# Methods -------------------------------------------------------------------
# MedStd has a number of methods including
# print, summary, and plot
med <- MedStd(
phi = phi,
sigma = sigma,
delta_t = 1:5,
from = "x",
to = "y",
med = "m"
)
print(med)
#>
#> Total, Direct, and Indirect Effects
#>
#> interval total direct indirect
#> [1,] 1 -0.0936 -0.2503 0.1567
#> [2,] 2 0.0748 -0.3003 0.3751
#> [3,] 3 0.2347 -0.2728 0.5075
#> [4,] 4 0.3228 -0.2222 0.5450
#> [5,] 5 0.3456 -0.1711 0.5167
summary(med)
#> interval total direct indirect
#> [1,] 1 -0.0936 -0.2503 0.1567
#> [2,] 2 0.0748 -0.3003 0.3751
#> [3,] 3 0.2347 -0.2728 0.5075
#> [4,] 4 0.3228 -0.2222 0.5450
#> [5,] 5 0.3456 -0.1711 0.5167
plot(med)