View source: R/probeInteraction.R
plotProbe | R Documentation |
This function will plot the line graphs representing the simple effect of the independent variable given the values of the moderator. For multigroup models, it will only generate a plot for 1 group, as specified in the function used to obtain the first argument.
plotProbe(object, xlim, xlab = "Indepedent Variable", ylab = "Dependent Variable", legend = TRUE, legendArgs = list(), ...)
object |
The result of probing latent interaction obtained from
|
xlim |
The vector of two numbers: the minimum and maximum values of the independent variable |
xlab |
The label of the x-axis |
ylab |
The label of the y-axis |
legend |
|
legendArgs |
|
... |
Any addition argument for the |
None. This function will plot the simple main effect only.
Sunthud Pornprasertmanit (psunthud@gmail.com)
Terrence D. Jorgensen (University of Amsterdam; TJorgensen314@gmail.com)
Schoemann, A. M., & Jorgensen, T. D. (2021). Testing and interpreting
latent variable interactions using the semTools
package.
Psych, 3(3), 322–335. doi: 10.3390/psych3030024
indProd
For creating the indicator products with no
centering, mean centering, double-mean centering, or residual centering.
probe2WayMC
For probing the two-way latent interaction
when the results are obtained from mean-centering, or double-mean centering
probe3WayMC
For probing the three-way latent interaction
when the results are obtained from mean-centering, or double-mean centering
probe2WayRC
For probing the two-way latent interaction
when the results are obtained from residual-centering approach.
probe3WayRC
For probing the two-way latent interaction
when the results are obtained from residual-centering approach.
library(lavaan) dat2wayMC <- indProd(dat2way, 1:3, 4:6) model1 <- " f1 =~ x1 + x2 + x3 f2 =~ x4 + x5 + x6 f12 =~ x1.x4 + x2.x5 + x3.x6 f3 =~ x7 + x8 + x9 f3 ~ f1 + f2 + f12 f12 ~~ 0*f1 f12 ~~ 0*f2 x1 ~ 0*1 x4 ~ 0*1 x1.x4 ~ 0*1 x7 ~ 0*1 f1 ~ NA*1 f2 ~ NA*1 f12 ~ NA*1 f3 ~ NA*1 " fitMC2way <- sem(model1, data = dat2wayMC, meanstructure = TRUE) result2wayMC <- probe2WayMC(fitMC2way, nameX = c("f1", "f2", "f12"), nameY = "f3", modVar = "f2", valProbe = c(-1, 0, 1)) plotProbe(result2wayMC, xlim = c(-2, 2)) dat3wayMC <- indProd(dat3way, 1:3, 4:6, 7:9) model3 <- " f1 =~ x1 + x2 + x3 f2 =~ x4 + x5 + x6 f3 =~ x7 + x8 + x9 f12 =~ x1.x4 + x2.x5 + x3.x6 f13 =~ x1.x7 + x2.x8 + x3.x9 f23 =~ x4.x7 + x5.x8 + x6.x9 f123 =~ x1.x4.x7 + x2.x5.x8 + x3.x6.x9 f4 =~ x10 + x11 + x12 f4 ~ f1 + f2 + f3 + f12 + f13 + f23 + f123 f1 ~~ 0*f12 f1 ~~ 0*f13 f1 ~~ 0*f123 f2 ~~ 0*f12 f2 ~~ 0*f23 f2 ~~ 0*f123 f3 ~~ 0*f13 f3 ~~ 0*f23 f3 ~~ 0*f123 f12 ~~ 0*f123 f13 ~~ 0*f123 f23 ~~ 0*f123 x1 ~ 0*1 x4 ~ 0*1 x7 ~ 0*1 x10 ~ 0*1 x1.x4 ~ 0*1 x1.x7 ~ 0*1 x4.x7 ~ 0*1 x1.x4.x7 ~ 0*1 f1 ~ NA*1 f2 ~ NA*1 f3 ~ NA*1 f12 ~ NA*1 f13 ~ NA*1 f23 ~ NA*1 f123 ~ NA*1 f4 ~ NA*1 " fitMC3way <- sem(model3, data = dat3wayMC, std.lv = FALSE, meanstructure = TRUE) result3wayMC <- probe3WayMC(fitMC3way, nameX = c("f1", "f2", "f3", "f12", "f13", "f23", "f123"), nameY = "f4", modVar = c("f1", "f2"), valProbe1 = c(-1, 0, 1), valProbe2 = c(-1, 0, 1)) plotProbe(result3wayMC, xlim = c(-2, 2))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.