probe2WayRC: Probing two-way interaction on the residual-centered latent...

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/probeInteraction.R

Description

Probing interaction for simple intercept and simple slope for the residual-centered latent two-way interaction (Pornprasertmanit, Schoemann, Geldhof, & Little, submitted)

Usage

1
probe2WayRC(fit, nameX, nameY, modVar, valProbe)

Arguments

fit

The lavaan model object used to evaluate model fit

nameX

The vector of the factor names used as the predictors. The first-order factor will be listed first. The last name must be the name representing the interaction term.

nameY

The name of factor that is used as the dependent variable.

modVar

The name of factor that is used as a moderator. The effect of the other independent factor on each moderator variable value will be probed.

valProbe

The values of the moderator that will be used to probe the effect of the other independent factor.

Details

Before using this function, researchers need to make the products of the indicators between the first-order factors and residualize the products by the original indicators (Lance, 1988; Little, Bovaird, & Widaman, 2006). The process can be automated by the indProd function. Note that the indicator products can be made for all possible combination or matched-pair approach (Marsh et al., 2004). Next, the hypothesized model with the regression with latent interaction will be used to fit all original indicators and the product terms. To use this function the model must be fit with a mean structure. See the example for how to fit the product term below. Once the lavaan result is obtained, this function will be used to probe the interaction.

The probing process on residual-centered latent interaction is based on transforming the residual-centered result into the no-centered result. See Pornprasertmanit, Schoemann, Geldhof, and Little (submitted) for further details. Note that this approach based on a strong assumption that the first-order latent variables are normally distributed. The probing process is applied after the no-centered result (parameter estimates and their covariance matrix among parameter estimates) has been computed. See the probe2WayMC for further details.

Value

A list with two elements:

  1. SimpleIntercept The intercepts given each value of the moderator. This element will be shown only if the factor intercept is estimated (e.g., not fixed as 0).

  2. SimpleSlope The slopes given each value of the moderator.

In each element, the first column represents the values of the moderators specified in the valProbe argument. The second column is the simple intercept or simple slope. The third column is the standard error of the simple intercept or simple slope. The fourth column is the Wald (z) statistic. The fifth column is the p-value testing whether the simple intercepts or slopes are different from 0.

Author(s)

Sunthud Pornprasertmanit ([email protected])

References

Lance, C. E. (1988). Residual centering, exploratory and confirmatory moderator analysis, and decomposition of effects in path models containing interactions. Applied Psychological Measurement, 12, 163-175.

Little, T. D., Bovaird, J. A., & Widaman, K. F. (2006). On the merits of orthogonalizing powered and product terms: Implications for modeling interactions. Structural Equation Modeling, 13, 497-519.

Marsh, H. W., Wen, Z., & Hau, K. T. (2004). Structural equation models of latent interactions: Evaluation of alternative estimation strategies and indicator construction. Psychological Methods, 9, 275-300.

Pornprasertmanit, S., Schoemann, A. M., Geldhof, G. J., & Little, T. D. (submitted). Probing latent interaction estimated with a residual centering approach.

See Also

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
library(lavaan) 

dat2wayRC <- orthogonalize(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
"

fitRC2way <- sem(model1, data=dat2wayRC, meanstructure=TRUE, std.lv=FALSE)
summary(fitRC2way)

result2wayRC <- probe2WayRC(fitRC2way, c("f1", "f2", "f12"), "f3", "f2", c(-1, 0, 1))
result2wayRC

Example output

Loading required package: lavaan
This is lavaan 0.5-23.1097
lavaan is BETA software! Please report any bugs.
 
###############################################################################
This is semTools 0.4-14
All users of R (or SEM) are invited to submit functions or ideas for functions.
###############################################################################
lavaan (0.5-23.1097) converged normally after  51 iterations

  Number of observations                         10000

  Estimator                                         ML
  Minimum Function Test Statistic               11.737
  Degrees of freedom                                50
  P-value (Chi-square)                           1.000

Parameter Estimates:

  Information                                 Expected
  Standard Errors                             Standard

Latent Variables:
                   Estimate  Std.Err  z-value  P(>|z|)
  f1 =~                                               
    x1                1.000                           
    x2                0.994    0.018   55.226    0.000
    x3                1.006    0.018   55.396    0.000
  f2 =~                                               
    x4                1.000                           
    x5                0.998    0.018   54.486    0.000
    x6                0.983    0.018   54.193    0.000
  f12 =~                                              
    x1.x4             1.000                           
    x2.x5             0.964    0.038   25.295    0.000
    x3.x6             0.962    0.038   25.322    0.000
  f3 =~                                               
    x7                1.000                           
    x8                1.019    0.020   50.213    0.000
    x9                1.003    0.020   49.808    0.000

Regressions:
                   Estimate  Std.Err  z-value  P(>|z|)
  f3 ~                                                
    f1                0.417    0.014   30.632    0.000
    f2                0.395    0.014   29.206    0.000
    f12               0.194    0.011   17.384    0.000

Covariances:
                   Estimate  Std.Err  z-value  P(>|z|)
  f1 ~~                                               
    f12               0.000                           
  f2 ~~                                               
    f12               0.000                           
  f1 ~~                                               
    f2                0.492    0.016   30.957    0.000

Intercepts:
                   Estimate  Std.Err  z-value  P(>|z|)
   .x1                0.000                           
   .x4                0.000                           
   .x1.x4             0.000                           
   .x7                0.000                           
    f1                0.000    0.014    0.000    1.000
    f2                0.000    0.014    0.000    1.000
    f12               0.000    0.020    0.000    1.000
   .f3                0.100    0.013    7.794    0.000
   .x2               -0.000    0.014   -0.000    1.000
   .x3               -0.000    0.014   -0.000    1.000
   .x5                0.000    0.014    0.000    1.000
   .x6                0.000    0.014    0.000    1.000
   .x2.x5            -0.000    0.024   -0.000    1.000
   .x3.x6            -0.000    0.024   -0.000    1.000
   .x8               -0.002    0.014   -0.132    0.895
   .x9               -0.000    0.014   -0.023    0.982

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)
   .x1                0.992    0.020   49.986    0.000
   .x2                1.004    0.020   50.465    0.000
   .x3                1.003    0.020   49.984    0.000
   .x4                1.006    0.020   49.857    0.000
   .x5                0.991    0.020   49.640    0.000
   .x6                1.003    0.020   50.521    0.000
   .x1.x4             2.872    0.065   44.418    0.000
   .x2.x5             3.001    0.063   47.348    0.000
   .x3.x6             3.138    0.065   48.517    0.000
   .x7                1.014    0.018   55.827    0.000
   .x8                0.987    0.018   54.765    0.000
   .x9                0.999    0.018   55.472    0.000
    f1                0.991    0.028   35.330    0.000
    f2                0.982    0.028   34.892    0.000
    f12               1.260    0.066   19.229    0.000
   .f3                0.194    0.011   17.569    0.000

$SimpleIntcept
     f2      Intcept         SE        Wald       p
[1,] -1 -0.390416411 0.01958671 -19.9327216 0.00000
[2,]  0  0.004669468 0.01410859   0.3309662 0.74067
[3,]  1  0.399755348 0.01958671  20.4095217 0.00000

$SimpleSlope
     f2     Slope         SE     Wald p
[1,] -1 0.2229032 0.01713558 13.00821 0
[2,]  0 0.4168254 0.01366659 30.49960 0
[3,]  1 0.6107477 0.01844686 33.10849 0

semTools documentation built on May 29, 2017, 9:37 a.m.