Note: To show the code, press the “Code” button on the right.
Abbreviations: SST = SameSexTouch, OST = OppositeSexTouch, COT = CloseOtherTouch.
Misc: Bootstrap SEs were used with 1000 bootstrap samples for all the models. All the computations were carried out using lavaan package, mimicking the Mplus calculations. The data were assumed to be missing at random - models were estimated using full-information maximum likelihood fit function.
For the following 3 Poisson GLMs, “estimate” represents standardized estimates (I centered and z-scaled the variables beforehand), Pr(>|z|) is the associated p-value. For convenience, the output shows only the table with parameter estimates and matrix of bivariate correlations.
summary(glm(HowLong ~ SSTouchTest * ZCommunalStrength, data = exdat, family=poisson()))$coefficients
## Estimate Std. Error z value
## (Intercept) 0.39837381 0.04503078 8.8467005
## SSTouchTest -0.01467203 0.04564702 -0.3214236
## ZCommunalStrength -0.06405330 0.04309837 -1.4862117
## SSTouchTest:ZCommunalStrength 0.03936955 0.04517475 0.8714946
## Pr(>|z|)
## (Intercept) 9.014493e-19
## SSTouchTest 7.478894e-01
## ZCommunalStrength 1.372231e-01
## SSTouchTest:ZCommunalStrength 3.834841e-01
d1 <- with(exdat, data.frame(HowLong = HowLong, SST = SSTouchTest, CS = ZCommunalStrength))
round(cor(d1, use = "pairwise.complete.obs"), 2)
## HowLong SST CS
## HowLong 1.00 -0.04 -0.13
## SST -0.04 1.00 0.10
## CS -0.13 0.10 1.00
summary(glm(HowLong ~ OSTouchTest * ZCommunalStrength, data = exdat, family=poisson()))$coefficients
## Estimate Std. Error z value
## (Intercept) 0.39921601 0.04477329 8.9163872
## OSTouchTest 0.04607100 0.04611777 0.9989858
## ZCommunalStrength -0.07020916 0.04291029 -1.6361848
## OSTouchTest:ZCommunalStrength 0.03336178 0.04599218 0.7253793
## Pr(>|z|)
## (Intercept) 4.817470e-19
## OSTouchTest 3.178016e-01
## ZCommunalStrength 1.018009e-01
## OSTouchTest:ZCommunalStrength 4.682194e-01
d2 <- with(exdat, data.frame(HowLong = HowLong, OST = OSTouchTest, CS = ZCommunalStrength))
round(cor(d2, use = "pairwise.complete.obs"), 2)
## HowLong OST CS
## HowLong 1.00 0.08 -0.13
## OST 0.08 1.00 -0.01
## CS -0.13 -0.01 1.00
summary(glm(HowLong ~ CloseOthersTouchTest * ZCommunalStrength, data = exdat, family=poisson()))$coefficients
## Estimate Std. Error z value
## (Intercept) 0.398475890 0.04530567 8.7952766
## CloseOthersTouchTest 0.009936536 0.04567637 0.2175422
## ZCommunalStrength -0.067049940 0.04320836 -1.5517815
## CloseOthersTouchTest:ZCommunalStrength 0.019910825 0.04778705 0.4166573
## Pr(>|z|)
## (Intercept) 1.426960e-18
## CloseOthersTouchTest 8.277859e-01
## ZCommunalStrength 1.207145e-01
## CloseOthersTouchTest:ZCommunalStrength 6.769291e-01
d3 <- with(exdat, data.frame(HowLong = HowLong, COT = CloseOthersTouchTest, CS = ZCommunalStrength))
round(cor(d3, use = "pairwise.complete.obs"), 2)
## HowLong COT CS
## HowLong 1.00 0.00 -0.13
## COT 0.00 1.00 0.14
## CS -0.13 0.14 1.00
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). The operator “~” stands for “is predicted by”, “:=” denotes “is defined by”. Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress <- 'PriBC ~ alpha*int_SST_sharing + TargetSharing + SSTouchTest
stress ~ beta*PriBC + tau*int_SST_sharing + TargetSharing + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSSstress <- sem(modelSSstress, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_sharing alpha 0.017 0.032 0.519 0.604
## 4 stress ~ PriBC beta -0.016 0.062 -0.254 0.799
## 5 stress ~ int_SST_sharing tau 0.031 0.042 0.728 0.467
## 21 indirect := alpha*beta indirect 0.000 0.002 -0.117 0.907
## 22 direct := tau direct 0.031 0.042 0.726 0.468
## 23 total := tau+(alpha*beta) total 0.030 0.042 0.720 0.472
## ci.lower ci.upper
## 1 -0.063 0.077
## 4 -0.139 0.108
## 5 -0.055 0.116
## 21 -0.005 0.005
## 22 -0.055 0.116
## 23 -0.055 0.116
lavCor(fitSSstress)
## PriBC stress i_SST_ TrgtSh SSTchT
## PriBC 1.000
## stress -0.019 1.000
## int_SST_sharing 0.007 0.047 1.000
## TargetSharing 0.015 0.015 -0.061 1.000
## SSTouchTest 0.116 -0.055 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOSstress <- 'PriBC ~ alpha*int_OST_sharing + TargetSharing + OSTouchTest
stress ~ beta*PriBC + tau*int_OST_sharing + TargetSharing + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOSstress <- sem(modelOSstress, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_sharing alpha 0.055 0.034 1.642 0.101
## 4 stress ~ PriBC beta 0.003 0.062 0.055 0.956
## 5 stress ~ int_OST_sharing tau -0.030 0.042 -0.718 0.473
## 21 indirect := alpha*beta indirect 0.000 0.004 0.046 0.964
## 22 direct := tau direct -0.030 0.042 -0.716 0.474
## 23 total := tau+(alpha*beta) total -0.030 0.042 -0.705 0.481
## ci.lower ci.upper
## 1 -0.003 0.130
## 4 -0.128 0.129
## 5 -0.111 0.052
## 21 -0.009 0.009
## 22 -0.111 0.052
## 23 -0.112 0.055
lavCor(fitOSstress)
## PriBC stress i_OST_ TrgtSh OSTchT
## PriBC 1.000
## stress -0.019 1.000
## int_OST_sharing 0.072 -0.025 1.000
## TargetSharing 0.015 0.015 -0.070 1.000
## OSTouchTest 0.118 -0.155 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOstress <- 'PriBC ~ alpha*int_COT_sharing + TargetSharing + CloseOthersTouchTest
stress ~ beta*PriBC + tau*int_COT_sharing + TargetSharing + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOstress <- sem(modelCOstress, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_sharing alpha -0.035 0.037 -0.946 0.344
## 4 stress ~ PriBC beta -0.023 0.060 -0.380 0.704
## 5 stress ~ int_COT_sharing tau 0.014 0.041 0.347 0.729
## 21 indirect := alpha*beta indirect 0.001 0.003 0.240 0.811
## 22 direct := tau direct 0.014 0.041 0.346 0.729
## 23 total := tau+(alpha*beta) total 0.015 0.041 0.364 0.716
## ci.lower ci.upper
## 1 -0.114 0.035
## 4 -0.148 0.090
## 5 -0.077 0.088
## 21 -0.005 0.010
## 22 -0.077 0.088
## 23 -0.075 0.092
lavCor(fitCOstress)
## PriBC stress i_COT_ TrgtSh ClsOTT
## PriBC 1.000
## stress -0.019 1.000
## int_COT_sharing -0.058 0.018 1.000
## TargetSharing 0.015 0.015 -0.081 1.000
## CloseOthersTouchTest 0.072 0.026 -0.044 0.085 1.000
##################################
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). The operator “~” stands for “is predicted by”, “:=” denotes “is defined by”. Table below the parameter estimates is the matrix of bivariate correlations.
modelSSreflection <- 'PriBC ~ alpha*int_SST_sharing + TargetSharing + SSTouchTest
reflection ~ beta*PriBC + tau*int_SST_sharing + TargetSharing + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSSreflection <- sem(modelSSreflection, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSreflection, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_sharing alpha 0.017 0.035 0.468 0.640
## 4 reflection ~ PriBC beta 0.234 0.083 2.829 0.005
## 5 reflection ~ int_SST_sharing tau -0.032 0.051 -0.634 0.526
## 21 indirect := alpha*beta indirect 0.004 0.008 0.459 0.646
## 22 direct := tau direct -0.032 0.051 -0.633 0.527
## 23 total := tau+(alpha*beta) total -0.028 0.052 -0.548 0.583
## ci.lower ci.upper
## 1 -0.053 0.082
## 4 0.033 0.386
## 5 -0.140 0.059
## 21 -0.013 0.020
## 22 -0.140 0.059
## 23 -0.137 0.068
lavCor(fitSSreflection)
## PriBC rflctn i_SST_ TrgtSh SSTchT
## PriBC 1.000
## reflection 0.165 1.000
## int_SST_sharing 0.007 -0.065 1.000
## TargetSharing 0.015 0.138 -0.061 1.000
## SSTouchTest 0.116 0.223 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOSreflection <- 'PriBC ~ alpha*int_OST_sharing + TargetSharing + OSTouchTest
reflection ~ beta*PriBC + tau*int_OST_sharing + TargetSharing + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOSreflection <- sem(modelOSreflection, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSreflection, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_sharing alpha 0.055 0.039 1.413 0.158
## 4 reflection ~ PriBC beta 0.222 0.089 2.486 0.013
## 5 reflection ~ int_OST_sharing tau 0.012 0.054 0.227 0.820
## 21 indirect := alpha*beta indirect 0.012 0.012 1.057 0.291
## 22 direct := tau direct 0.012 0.054 0.227 0.820
## 23 total := tau+(alpha*beta) total 0.025 0.056 0.438 0.661
## ci.lower ci.upper
## 1 -0.022 0.132
## 4 0.045 0.412
## 5 -0.091 0.113
## 21 -0.005 0.042
## 22 -0.091 0.113
## 23 -0.086 0.134
lavCor(fitOSreflection)
## PriBC rflctn i_OST_ TrgtSh OSTchT
## PriBC 1.000
## reflection 0.165 1.000
## int_OST_sharing 0.072 -0.012 1.000
## TargetSharing 0.015 0.138 -0.070 1.000
## OSTouchTest 0.118 0.261 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOreflection <- 'PriBC ~ alpha*int_COT_sharing + TargetSharing + CloseOthersTouchTest
reflection ~ beta*PriBC + tau*int_COT_sharing + TargetSharing + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOreflection <- sem(modelCOreflection, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOreflection, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_sharing alpha -0.035 0.040 -0.872 0.383
## 4 reflection ~ PriBC beta 0.246 0.075 3.261 0.001
## 5 reflection ~ int_COT_sharing tau -0.057 0.050 -1.150 0.250
## 21 indirect := alpha*beta indirect -0.009 0.010 -0.840 0.401
## 22 direct := tau direct -0.057 0.050 -1.147 0.251
## 23 total := tau+(alpha*beta) total -0.066 0.052 -1.266 0.206
## ci.lower ci.upper
## 1 -0.111 0.049
## 4 0.074 0.384
## 5 -0.159 0.033
## 21 -0.031 0.014
## 22 -0.159 0.033
## 23 -0.172 0.035
lavCor(fitCOreflection)
## PriBC rflctn i_COT_ TrgtSh ClsOTT
## PriBC 1.000
## reflection 0.165 1.000
## int_COT_sharing -0.058 -0.079 1.000
## TargetSharing 0.015 0.138 -0.081 1.000
## CloseOthersTouchTest 0.072 0.188 -0.044 0.085 1.000
#######################
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). The operator “~” stands for “is predicted by”, “:=” denotes “is defined by”. Table below the parameter estimates is the matrix of bivariate correlations.
modelSSrumination <- 'PriBC ~ alpha*int_SST_sharing + TargetSharing + SSTouchTest
rumination ~ beta*PriBC + tau*int_SST_sharing + TargetSharing + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSSrumination <- sem(modelSSrumination, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSrumination, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_sharing alpha 0.017 0.033 0.497 0.619
## 4 rumination ~ PriBC beta -0.037 0.117 -0.321 0.748
## 5 rumination ~ int_SST_sharing tau -0.032 0.062 -0.524 0.600
## 21 indirect := alpha*beta indirect -0.001 0.005 -0.132 0.895
## 22 direct := tau direct -0.032 0.062 -0.523 0.601
## 23 total := tau+(alpha*beta) total -0.033 0.062 -0.534 0.593
## ci.lower ci.upper
## 1 -0.058 0.073
## 4 -0.266 0.167
## 5 -0.176 0.077
## 21 -0.013 0.008
## 22 -0.176 0.077
## 23 -0.182 0.074
lavCor(fitSSrumination)
## PriBC rumntn i_SST_ TrgtSh SSTchT
## PriBC 1.000
## rumination -0.028 1.000
## int_SST_sharing 0.007 -0.010 1.000
## TargetSharing 0.015 -0.045 -0.061 1.000
## SSTouchTest 0.116 -0.078 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOSrumination <- 'PriBC ~ alpha*int_OST_sharing + TargetSharing + OSTouchTest
rumination ~ beta*PriBC + tau*int_OST_sharing + TargetSharing + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOSrumination <- sem(modelOSrumination, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSrumination, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_sharing alpha 0.055 0.035 1.579 0.114
## 4 rumination ~ PriBC beta -0.026 0.106 -0.249 0.803
## 5 rumination ~ int_OST_sharing tau -0.053 0.077 -0.690 0.490
## 21 indirect := alpha*beta indirect -0.001 0.007 -0.215 0.830
## 22 direct := tau direct -0.053 0.077 -0.688 0.491
## 23 total := tau+(alpha*beta) total -0.054 0.078 -0.700 0.484
## ci.lower ci.upper
## 1 -0.019 0.119
## 4 -0.224 0.197
## 5 -0.199 0.092
## 21 -0.018 0.011
## 22 -0.199 0.092
## 23 -0.208 0.087
lavCor(fitOSrumination)
## PriBC rumntn i_OST_ TrgtSh OSTchT
## PriBC 1.000
## rumination -0.028 1.000
## int_OST_sharing 0.072 -0.028 1.000
## TargetSharing 0.015 -0.045 -0.070 1.000
## OSTouchTest 0.118 -0.098 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOrumination <- 'PriBC ~ alpha*int_COT_sharing + TargetSharing + CloseOthersTouchTest
rumination ~ beta*PriBC + tau*int_COT_sharing + TargetSharing + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOrumination <- sem(modelCOrumination, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOrumination, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_sharing alpha -0.035 0.035 -1.013 0.311
## 4 rumination ~ PriBC beta -0.048 0.118 -0.407 0.684
## 5 rumination ~ int_COT_sharing tau 0.050 0.067 0.736 0.462
## 21 indirect := alpha*beta indirect 0.002 0.006 0.305 0.760
## 22 direct := tau direct 0.050 0.068 0.734 0.463
## 23 total := tau+(alpha*beta) total 0.051 0.068 0.750 0.453
## ci.lower ci.upper
## 1 -0.100 0.034
## 4 -0.266 0.171
## 5 -0.086 0.177
## 21 -0.012 0.013
## 22 -0.086 0.177
## 23 -0.095 0.179
lavCor(fitCOrumination)
## PriBC rumntn i_COT_ TrgtSh ClsOTT
## PriBC 1.000
## rumination -0.028 1.000
## int_COT_sharing -0.058 0.043 1.000
## TargetSharing 0.015 -0.045 -0.081 1.000
## CloseOthersTouchTest 0.072 -0.030 -0.044 0.085 1.000
#######################
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). The operator “~” stands for “is predicted by”, “:=” denotes “is defined by”. Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth <- 'PriBC ~ alpha*int_SST_sharing + TargetSharing + SSTouchTest
health ~ beta*PriBC + tau*int_SST_sharing + TargetSharing + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSShealth <- sem(modelSShealth, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_sharing alpha 0.017 0.031 0.526 0.599
## 4 health ~ PriBC beta -0.124 0.082 -1.508 0.132
## 5 health ~ int_SST_sharing tau 0.057 0.056 1.020 0.308
## 21 indirect := alpha*beta indirect -0.002 0.005 -0.403 0.687
## 22 direct := tau direct 0.057 0.056 1.017 0.309
## 23 total := tau+(alpha*beta) total 0.055 0.056 0.975 0.330
## ci.lower ci.upper
## 1 -0.046 0.075
## 4 -0.285 0.048
## 5 -0.071 0.170
## 21 -0.015 0.008
## 22 -0.071 0.170
## 23 -0.074 0.165
lavCor(fitSShealth)
## PriBC health i_SST_ TrgtSh SSTchT
## PriBC 1.000
## health -0.083 1.000
## int_SST_sharing 0.007 0.062 1.000
## TargetSharing 0.015 -0.017 -0.061 1.000
## SSTouchTest 0.116 -0.065 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOShealth <- 'PriBC ~ alpha*int_OST_sharing + TargetSharing + OSTouchTest
health ~ beta*PriBC + tau*int_OST_sharing + TargetSharing + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOShealth <- sem(modelOShealth, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_sharing alpha 0.055 0.041 1.360 0.174
## 4 health ~ PriBC beta -0.104 0.082 -1.264 0.206
## 5 health ~ int_OST_sharing tau -0.044 0.059 -0.748 0.454
## 21 indirect := alpha*beta indirect -0.006 0.007 -0.822 0.411
## 22 direct := tau direct -0.044 0.059 -0.746 0.456
## 23 total := tau+(alpha*beta) total -0.050 0.060 -0.828 0.407
## ci.lower ci.upper
## 1 -0.020 0.148
## 4 -0.267 0.067
## 5 -0.164 0.079
## 21 -0.026 0.004
## 22 -0.164 0.079
## 23 -0.179 0.079
lavCor(fitOShealth)
## PriBC health i_OST_ TrgtSh OSTchT
## PriBC 1.000
## health -0.083 1.000
## int_OST_sharing 0.072 -0.034 1.000
## TargetSharing 0.015 -0.017 -0.070 1.000
## OSTouchTest 0.118 -0.130 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOhealth <- 'PriBC ~ alpha*int_COT_sharing + TargetSharing + CloseOthersTouchTest
health ~ beta*PriBC + tau*int_COT_sharing + TargetSharing + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOhealth <- sem(modelCOhealth, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_sharing alpha -0.035 0.037 -0.964 0.335
## 4 health ~ PriBC beta -0.136 0.083 -1.629 0.103
## 5 health ~ int_COT_sharing tau 0.006 0.056 0.100 0.920
## 21 indirect := alpha*beta indirect 0.005 0.006 0.783 0.434
## 22 direct := tau direct 0.006 0.056 0.100 0.921
## 23 total := tau+(alpha*beta) total 0.010 0.056 0.184 0.854
## ci.lower ci.upper
## 1 -0.111 0.039
## 4 -0.291 0.027
## 5 -0.111 0.113
## 21 -0.006 0.020
## 22 -0.111 0.113
## 23 -0.110 0.115
lavCor(fitCOhealth)
## PriBC health i_COT_ TrgtSh ClsOTT
## PriBC 1.000
## health -0.083 1.000
## int_COT_sharing -0.058 0.010 1.000
## TargetSharing 0.015 -0.017 -0.081 1.000
## CloseOthersTouchTest 0.072 0.028 -0.044 0.085 1.000
###################################
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). The operator “~” stands for “is predicted by”, “:=” denotes “is defined by”. Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress_refl <- 'reflection ~ a1*int_SST_sharing + TargetSharing + SSTouchTest
PriBC ~ a2*int_SST_sharing + d*reflection + TargetSharing + SSTouchTest
stress ~ c*int_SST_sharing + b1*reflection + b2*PriBC + TargetSharing + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSSstress_refl <- sem(modelSSstress_refl, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress_refl, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 reflection ~ int_SST_sharing a1 -0.028 0.061 -0.467
## 4 PriBC ~ int_SST_sharing a2 0.019 0.031 0.619
## 5 PriBC ~ reflection d 0.090 0.036 2.499
## 8 stress ~ int_SST_sharing c 0.021 0.040 0.535
## 9 stress ~ reflection b1 -0.286 0.035 -8.141
## 10 stress ~ PriBC b2 0.051 0.063 0.813
## 28 indirect1 := a1*b1 indirect1 0.008 0.018 0.463
## 29 indirect2 := a2*b2 indirect2 0.001 0.003 0.377
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 -0.260
## 31 direct := c direct 0.021 0.040 0.533
## pvalue ci.lower ci.upper
## 1 0.641 -0.134 0.106
## 4 0.536 -0.047 0.072
## 5 0.012 0.017 0.166
## 8 0.593 -0.057 0.102
## 9 0.000 -0.349 -0.218
## 10 0.416 -0.082 0.167
## 28 0.643 -0.034 0.039
## 29 0.706 -0.003 0.008
## 30 0.795 -0.001 0.001
## 31 0.594 -0.057 0.102
lavCor(fitSSstress_refl)
## rflctn PriBC stress i_SST_ TrgtSh SSTchT
## reflection 1.000
## PriBC 0.165 1.000
## stress -0.387 -0.019 1.000
## int_SST_sharing -0.065 0.007 0.047 1.000
## TargetSharing 0.138 0.015 0.015 -0.061 1.000
## SSTouchTest 0.223 0.116 -0.055 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOSstress_refl <- 'reflection ~ a1*int_OST_sharing + TargetSharing + OSTouchTest
PriBC ~ a2*int_OST_sharing + d*reflection + TargetSharing + OSTouchTest
stress ~ c*int_OST_sharing + b1*reflection + b2*PriBC + TargetSharing + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOSstress_refl <- sem(modelOSstress_refl, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress_refl, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 reflection ~ int_OST_sharing a1 0.025 0.050 0.495
## 4 PriBC ~ int_OST_sharing a2 0.053 0.035 1.539
## 5 PriBC ~ reflection d 0.086 0.034 2.562
## 8 stress ~ int_OST_sharing c -0.027 0.034 -0.792
## 9 stress ~ reflection b1 -0.272 0.039 -7.052
## 10 stress ~ PriBC b2 0.064 0.055 1.151
## 28 indirect1 := a1*b1 indirect1 -0.007 0.013 -0.507
## 29 indirect2 := a2*b2 indirect2 0.003 0.004 0.778
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.241
## 31 direct := c direct -0.027 0.034 -0.790
## pvalue ci.lower ci.upper
## 1 0.620 -0.063 0.142
## 4 0.124 -0.023 0.108
## 5 0.010 0.022 0.150
## 8 0.428 -0.102 0.037
## 9 0.000 -0.345 -0.198
## 10 0.250 -0.033 0.187
## 28 0.612 -0.035 0.015
## 29 0.437 -0.005 0.015
## 30 0.810 -0.001 0.002
## 31 0.430 -0.102 0.037
lavCor(fitOSstress_refl)
## rflctn PriBC stress i_OST_ TrgtSh OSTchT
## reflection 1.000
## PriBC 0.165 1.000
## stress -0.387 -0.019 1.000
## int_OST_sharing -0.012 0.072 -0.025 1.000
## TargetSharing 0.138 0.015 0.015 -0.070 1.000
## OSTouchTest 0.261 0.118 -0.155 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOstress_refl <- 'reflection ~ a1*int_COT_sharing + TargetSharing + CloseOthersTouchTest
PriBC ~ a2*int_COT_sharing + d*reflection + TargetSharing + CloseOthersTouchTest
stress ~ c*int_COT_sharing + b1*reflection + b2*PriBC + TargetSharing + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOstress_refl <- sem(modelCOstress_refl, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress_refl, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 reflection ~ int_COT_sharing a1 -0.066 0.052 -1.258
## 4 PriBC ~ int_COT_sharing a2 -0.029 0.035 -0.834
## 5 PriBC ~ reflection d 0.094 0.036 2.588
## 8 stress ~ int_COT_sharing c -0.003 0.038 -0.069
## 9 stress ~ reflection b1 -0.295 0.037 -7.997
## 10 stress ~ PriBC b2 0.050 0.063 0.787
## 28 indirect1 := a1*b1 indirect1 0.019 0.016 1.229
## 29 indirect2 := a2*b2 indirect2 -0.001 0.003 -0.446
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 -0.439
## 31 direct := c direct -0.003 0.038 -0.069
## pvalue ci.lower ci.upper
## 1 0.208 -0.166 0.026
## 4 0.404 -0.108 0.028
## 5 0.010 0.028 0.163
## 8 0.945 -0.078 0.077
## 9 0.000 -0.374 -0.221
## 10 0.432 -0.083 0.188
## 28 0.219 -0.008 0.051
## 29 0.655 -0.010 0.002
## 30 0.661 -0.002 0.001
## 31 0.945 -0.078 0.077
lavCor(fitCOstress_refl)
## rflctn PriBC stress i_COT_ TrgtSh ClsOTT
## reflection 1.000
## PriBC 0.165 1.000
## stress -0.387 -0.019 1.000
## int_COT_sharing -0.079 -0.058 0.018 1.000
## TargetSharing 0.138 0.015 0.015 -0.081 1.000
## CloseOthersTouchTest 0.188 0.072 0.026 -0.044 0.085 1.000
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). The operator “~” stands for “is predicted by”, “:=” denotes “is defined by”. Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth_refl <- 'reflection ~ a1*int_SST_sharing + TargetSharing + SSTouchTest
PriBC ~ a2*int_SST_sharing + d*reflection + TargetSharing + SSTouchTest
health ~ c*int_SST_sharing + b1*reflection + b2*PriBC + TargetSharing + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSShealth_refl <- sem(modelSShealth_refl, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth_refl, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 reflection ~ int_SST_sharing a1 -0.028 0.052 -0.545
## 4 PriBC ~ int_SST_sharing a2 0.019 0.031 0.620
## 5 PriBC ~ reflection d 0.090 0.034 2.619
## 8 health ~ int_SST_sharing c 0.050 0.053 0.942
## 9 health ~ reflection b1 -0.213 0.050 -4.289
## 10 health ~ PriBC b2 -0.074 0.076 -0.985
## 28 indirect1 := a1*b1 indirect1 0.006 0.012 0.502
## 29 indirect2 := a2*b2 indirect2 -0.001 0.003 -0.442
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.324
## 31 direct := c direct 0.050 0.053 0.940
## pvalue ci.lower ci.upper
## 1 0.586 -0.145 0.069
## 4 0.535 -0.036 0.077
## 5 0.009 0.016 0.159
## 8 0.346 -0.058 0.159
## 9 0.000 -0.331 -0.126
## 10 0.324 -0.231 0.085
## 28 0.616 -0.015 0.034
## 29 0.659 -0.010 0.005
## 30 0.746 -0.001 0.002
## 31 0.347 -0.058 0.159
lavCor(fitSShealth_refl)
## rflctn PriBC health i_SST_ TrgtSh SSTchT
## reflection 1.000
## PriBC 0.165 1.000
## health -0.230 -0.083 1.000
## int_SST_sharing -0.065 0.007 0.062 1.000
## TargetSharing 0.138 0.015 -0.017 -0.061 1.000
## SSTouchTest 0.223 0.116 -0.065 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOShealth_refl <- 'reflection ~ a1*int_OST_sharing + TargetSharing + OSTouchTest
PriBC ~ a2*int_OST_sharing + d*reflection + TargetSharing + OSTouchTest
health ~ c*int_OST_sharing + b1*reflection + b2*PriBC + TargetSharing + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOShealth_refl <- sem(modelOShealth_refl, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth_refl, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 reflection ~ int_OST_sharing a1 0.025 0.048 0.509
## 4 PriBC ~ int_OST_sharing a2 0.053 0.036 1.487
## 5 PriBC ~ reflection d 0.086 0.033 2.591
## 8 health ~ int_OST_sharing c -0.041 0.053 -0.786
## 9 health ~ reflection b1 -0.199 0.050 -3.963
## 10 health ~ PriBC b2 -0.060 0.084 -0.705
## 28 indirect1 := a1*b1 indirect1 -0.005 0.010 -0.489
## 29 indirect2 := a2*b2 indirect2 -0.003 0.006 -0.546
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 -0.226
## 31 direct := c direct -0.041 0.053 -0.784
## pvalue ci.lower ci.upper
## 1 0.611 -0.071 0.118
## 4 0.137 -0.014 0.130
## 5 0.010 0.019 0.149
## 8 0.432 -0.145 0.078
## 9 0.000 -0.309 -0.106
## 10 0.481 -0.227 0.099
## 28 0.625 -0.029 0.016
## 29 0.585 -0.017 0.006
## 30 0.821 -0.002 0.001
## 31 0.433 -0.145 0.078
lavCor(fitOShealth_refl)
## rflctn PriBC health i_OST_ TrgtSh OSTchT
## reflection 1.000
## PriBC 0.165 1.000
## health -0.230 -0.083 1.000
## int_OST_sharing -0.012 0.072 -0.034 1.000
## TargetSharing 0.138 0.015 -0.017 -0.070 1.000
## OSTouchTest 0.261 0.118 -0.130 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOhealth_refl <- 'reflection ~ a1*int_COT_sharing + TargetSharing + CloseOthersTouchTest
PriBC ~ a2*int_COT_sharing + d*reflection + TargetSharing + CloseOthersTouchTest
health ~ c*int_COT_sharing + b1*reflection + b2*PriBC + TargetSharing + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOhealth_refl <- sem(modelCOhealth_refl, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth_refl, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 reflection ~ int_COT_sharing a1 -0.066 0.048 -1.363
## 4 PriBC ~ int_COT_sharing a2 -0.029 0.034 -0.853
## 5 PriBC ~ reflection d 0.094 0.033 2.830
## 8 health ~ int_COT_sharing c -0.008 0.054 -0.140
## 9 health ~ reflection b1 -0.229 0.049 -4.641
## 10 health ~ PriBC b2 -0.079 0.083 -0.961
## 28 indirect1 := a1*b1 indirect1 0.015 0.011 1.371
## 29 indirect2 := a2*b2 indirect2 0.002 0.005 0.481
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.607
## 31 direct := c direct -0.008 0.054 -0.140
## pvalue ci.lower ci.upper
## 1 0.173 -0.162 0.029
## 4 0.394 -0.106 0.031
## 5 0.005 0.028 0.157
## 8 0.888 -0.103 0.101
## 9 0.000 -0.326 -0.132
## 10 0.337 -0.256 0.081
## 28 0.170 -0.010 0.038
## 29 0.631 -0.005 0.018
## 30 0.544 0.000 0.003
## 31 0.889 -0.103 0.101
lavCor(fitCOhealth_refl)
## rflctn PriBC health i_COT_ TrgtSh ClsOTT
## reflection 1.000
## PriBC 0.165 1.000
## health -0.230 -0.083 1.000
## int_COT_sharing -0.079 -0.058 0.010 1.000
## TargetSharing 0.138 0.015 -0.017 -0.081 1.000
## CloseOthersTouchTest 0.188 0.072 0.028 -0.044 0.085 1.000
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress_rum <- 'rumination ~ a1*int_SST_sharing + TargetSharing + SSTouchTest
PriBC ~ a2*int_SST_sharing + d*rumination + TargetSharing + SSTouchTest
stress ~ c*int_SST_sharing + b1*rumination + b2*PriBC + TargetSharing + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSSstress_rum <- sem(modelSSstress_rum, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress_rum, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 rumination ~ int_SST_sharing a1 -0.033 0.060 -0.548
## 4 PriBC ~ int_SST_sharing a2 0.016 0.034 0.476
## 5 PriBC ~ rumination d -0.009 0.026 -0.342
## 8 stress ~ int_SST_sharing c 0.041 0.036 1.133
## 9 stress ~ rumination b1 0.320 0.023 14.062
## 10 stress ~ PriBC b2 -0.004 0.049 -0.077
## 28 indirect1 := a1*b1 indirect1 -0.011 0.019 -0.547
## 29 indirect2 := a2*b2 indirect2 0.000 0.002 -0.033
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 -0.014
## 31 direct := c direct 0.041 0.036 1.130
## pvalue ci.lower ci.upper
## 1 0.584 -0.143 0.097
## 4 0.634 -0.046 0.090
## 5 0.733 -0.070 0.044
## 8 0.257 -0.032 0.114
## 9 0.000 0.269 0.365
## 10 0.939 -0.103 0.089
## 28 0.584 -0.044 0.030
## 29 0.974 -0.004 0.004
## 30 0.989 0.000 0.000
## 31 0.258 -0.032 0.114
lavCor(fitSSstress_rum)
## rumntn PriBC stress i_SST_ TrgtSh SSTchT
## rumination 1.000
## PriBC -0.028 1.000
## stress 0.564 -0.019 1.000
## int_SST_sharing -0.010 0.007 0.047 1.000
## TargetSharing -0.045 0.015 0.015 -0.061 1.000
## SSTouchTest -0.078 0.116 -0.055 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOSstress_rum <- 'rumination ~ a1*int_OST_sharing + TargetSharing + OSTouchTest
PriBC ~ a2*int_OST_sharing + d*rumination + TargetSharing + OSTouchTest
stress ~ c*int_OST_sharing + b1*rumination + b2*PriBC + TargetSharing + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOSstress_rum <- sem(modelOSstress_rum, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress_rum, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 rumination ~ int_OST_sharing a1 -0.054 0.066 -0.820
## 4 PriBC ~ int_OST_sharing a2 0.055 0.035 1.566
## 5 PriBC ~ rumination d -0.006 0.028 -0.219
## 8 stress ~ int_OST_sharing c -0.013 0.032 -0.427
## 9 stress ~ rumination b1 0.314 0.024 13.075
## 10 stress ~ PriBC b2 0.012 0.048 0.242
## 28 indirect1 := a1*b1 indirect1 -0.017 0.021 -0.826
## 29 indirect2 := a2*b2 indirect2 0.001 0.004 0.182
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 0.029
## 31 direct := c direct -0.013 0.032 -0.426
## pvalue ci.lower ci.upper
## 1 0.412 -0.213 0.072
## 4 0.117 -0.009 0.125
## 5 0.827 -0.064 0.045
## 8 0.670 -0.073 0.059
## 9 0.000 0.259 0.360
## 10 0.809 -0.089 0.103
## 28 0.409 -0.062 0.021
## 29 0.856 -0.009 0.007
## 30 0.977 0.000 0.000
## 31 0.670 -0.073 0.059
lavCor(fitOSstress_rum)
## rumntn PriBC stress i_OST_ TrgtSh OSTchT
## rumination 1.000
## PriBC -0.028 1.000
## stress 0.564 -0.019 1.000
## int_OST_sharing -0.028 0.072 -0.025 1.000
## TargetSharing -0.045 0.015 0.015 -0.070 1.000
## OSTouchTest -0.098 0.118 -0.155 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOstress_rum <- 'rumination ~ a1*int_COT_sharing + TargetSharing + CloseOthersTouchTest
PriBC ~ a2*int_COT_sharing + d*rumination + TargetSharing + CloseOthersTouchTest
stress ~ c*int_COT_sharing + b1*rumination + b2*PriBC + TargetSharing + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOstress_rum <- sem(modelCOstress_rum, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress_rum, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 rumination ~ int_COT_sharing a1 0.051 0.076 0.676
## 4 PriBC ~ int_COT_sharing a2 -0.035 0.038 -0.915
## 5 PriBC ~ rumination d -0.011 0.028 -0.408
## 8 stress ~ int_COT_sharing c -0.002 0.034 -0.050
## 9 stress ~ rumination b1 0.321 0.021 15.001
## 10 stress ~ PriBC b2 -0.007 0.048 -0.152
## 28 indirect1 := a1*b1 indirect1 0.016 0.024 0.673
## 29 indirect2 := a2*b2 indirect2 0.000 0.002 0.109
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 0.033
## 31 direct := c direct -0.002 0.034 -0.050
## pvalue ci.lower ci.upper
## 1 0.499 -0.102 0.217
## 4 0.360 -0.106 0.038
## 5 0.683 -0.064 0.050
## 8 0.960 -0.075 0.060
## 9 0.000 0.279 0.361
## 10 0.879 -0.104 0.087
## 28 0.501 -0.032 0.072
## 29 0.913 -0.005 0.005
## 30 0.973 0.000 0.000
## 31 0.960 -0.075 0.060
lavCor(fitCOstress_rum)
## rumntn PriBC stress i_COT_ TrgtSh ClsOTT
## rumination 1.000
## PriBC -0.028 1.000
## stress 0.564 -0.019 1.000
## int_COT_sharing 0.043 -0.058 0.018 1.000
## TargetSharing -0.045 0.015 0.015 -0.081 1.000
## CloseOthersTouchTest -0.030 0.072 0.026 -0.044 0.085 1.000
Controlling for main effects of Sharing and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth_rum <- 'rumination ~ a1*int_SST_sharing + TargetSharing + SSTouchTest
PriBC ~ a2*int_SST_sharing + d*rumination + TargetSharing + SSTouchTest
health ~ c*int_SST_sharing + b1*rumination + b2*PriBC + TargetSharing + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSShealth_rum <- sem(modelSShealth_rum, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth_rum, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 rumination ~ int_SST_sharing a1 -0.033 0.061 -0.542
## 4 PriBC ~ int_SST_sharing a2 0.016 0.035 0.469
## 5 PriBC ~ rumination d -0.009 0.030 -0.295
## 8 health ~ int_SST_sharing c 0.063 0.051 1.216
## 9 health ~ rumination b1 0.184 0.039 4.728
## 10 health ~ PriBC b2 -0.117 0.081 -1.450
## 28 indirect1 := a1*b1 indirect1 -0.006 0.011 -0.529
## 29 indirect2 := a2*b2 indirect2 -0.002 0.005 -0.368
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 -0.124
## 31 direct := c direct 0.063 0.052 1.213
## pvalue ci.lower ci.upper
## 1 0.588 -0.149 0.113
## 4 0.639 -0.049 0.084
## 5 0.768 -0.065 0.056
## 8 0.224 -0.049 0.155
## 9 0.000 0.099 0.245
## 10 0.147 -0.272 0.054
## 28 0.597 -0.030 0.022
## 29 0.713 -0.013 0.007
## 30 0.902 -0.001 0.001
## 31 0.225 -0.049 0.155
lavCor(fitSShealth_rum)
## rumntn PriBC health i_SST_ TrgtSh SSTchT
## rumination 1.000
## PriBC -0.028 1.000
## health 0.239 -0.083 1.000
## int_SST_sharing -0.010 0.007 0.062 1.000
## TargetSharing -0.045 0.015 -0.017 -0.061 1.000
## SSTouchTest -0.078 0.116 -0.065 -0.148 0.058 1.000
Controlling for main effects of Sharing and Touch
modelOShealth_rum <- 'rumination ~ a1*int_OST_sharing + TargetSharing + OSTouchTest
PriBC ~ a2*int_OST_sharing + d*rumination + TargetSharing + OSTouchTest
health ~ c*int_OST_sharing + b1*rumination + b2*PriBC + TargetSharing + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOShealth_rum <- sem(modelOShealth_rum, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth_rum, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 rumination ~ int_OST_sharing a1 -0.054 0.066 -0.817
## 4 PriBC ~ int_OST_sharing a2 0.055 0.038 1.443
## 5 PriBC ~ rumination d -0.006 0.026 -0.235
## 8 health ~ int_OST_sharing c -0.035 0.058 -0.595
## 9 health ~ rumination b1 0.176 0.039 4.512
## 10 health ~ PriBC b2 -0.099 0.077 -1.287
## 28 indirect1 := a1*b1 indirect1 -0.010 0.013 -0.738
## 29 indirect2 := a2*b2 indirect2 -0.005 0.006 -0.839
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 -0.111
## 31 direct := c direct -0.035 0.058 -0.594
## pvalue ci.lower ci.upper
## 1 0.414 -0.201 0.064
## 4 0.149 -0.023 0.132
## 5 0.814 -0.064 0.045
## 8 0.552 -0.164 0.065
## 9 0.000 0.081 0.249
## 10 0.198 -0.246 0.052
## 28 0.460 -0.042 0.012
## 29 0.402 -0.023 0.004
## 30 0.912 -0.001 0.000
## 31 0.553 -0.164 0.065
lavCor(fitOShealth_rum)
## rumntn PriBC health i_OST_ TrgtSh OSTchT
## rumination 1.000
## PriBC -0.028 1.000
## health 0.239 -0.083 1.000
## int_OST_sharing -0.028 0.072 -0.034 1.000
## TargetSharing -0.045 0.015 -0.017 -0.070 1.000
## OSTouchTest -0.098 0.118 -0.130 -0.100 0.031 1.000
Controlling for main effects of Sharing and Touch
modelCOhealth_rum <- 'rumination ~ a1*int_COT_sharing + TargetSharing + CloseOthersTouchTest
PriBC ~ a2*int_COT_sharing + d*rumination + TargetSharing + CloseOthersTouchTest
health ~ c*int_COT_sharing + b1*rumination + b2*PriBC + TargetSharing + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOhealth_rum <- sem(modelCOhealth_rum, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth_rum, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z
## 1 rumination ~ int_COT_sharing a1 0.051 0.076 0.675
## 4 PriBC ~ int_COT_sharing a2 -0.035 0.041 -0.842
## 5 PriBC ~ rumination d -0.011 0.027 -0.417
## 8 health ~ int_COT_sharing c -0.004 0.055 -0.066
## 9 health ~ rumination b1 0.186 0.037 5.077
## 10 health ~ PriBC b2 -0.127 0.083 -1.526
## 28 indirect1 := a1*b1 indirect1 0.010 0.014 0.661
## 29 indirect2 := a2*b2 indirect2 0.004 0.006 0.729
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.134
## 31 direct := c direct -0.004 0.055 -0.066
## pvalue ci.lower ci.upper
## 1 0.500 -0.087 0.215
## 4 0.400 -0.119 0.060
## 5 0.676 -0.065 0.044
## 8 0.947 -0.113 0.100
## 9 0.000 0.104 0.252
## 10 0.127 -0.275 0.048
## 28 0.508 -0.018 0.039
## 29 0.466 -0.006 0.021
## 30 0.894 -0.001 0.001
## 31 0.947 -0.113 0.100
lavCor(fitCOhealth_rum)
## rumntn PriBC health i_COT_ TrgtSh ClsOTT
## rumination 1.000
## PriBC -0.028 1.000
## health 0.239 -0.083 1.000
## int_COT_sharing 0.043 -0.058 0.010 1.000
## TargetSharing -0.045 0.015 -0.017 -0.081 1.000
## CloseOthersTouchTest -0.030 0.072 0.028 -0.044 0.085 1.000
###############
4a: The same would go for well-being, touch, communal strength, so, a: First examining interoception as mediator
Controlling for main effects of Communal Strenght and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress3 <- 'PriBC ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
stress ~ beta*PriBC + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSSstress3 <- sem(modelSSstress3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress3, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_CS alpha -0.041 0.041 -1.017 0.309
## 4 stress ~ PriBC beta -0.005 0.063 -0.077 0.939
## 5 stress ~ int_SST_CS tau 0.005 0.045 0.109 0.913
## 21 indirect := alpha*beta indirect 0.000 0.003 0.061 0.951
## 22 direct := tau direct 0.005 0.046 0.108 0.914
## 23 total := tau+(alpha*beta) total 0.005 0.045 0.114 0.910
## ci.lower ci.upper
## 1 -0.120 0.041
## 4 -0.150 0.113
## 5 -0.096 0.089
## 21 -0.008 0.008
## 22 -0.096 0.089
## 23 -0.092 0.086
lavCor(fitSSstress3)
## PriBC stress i_SST_ ZCmmnS SSTchT
## PriBC 1.000
## stress -0.019 1.000
## int_SST_CS -0.062 0.002 1.000
## ZCommunalStrength 0.108 -0.071 -0.005 1.000
## SSTouchTest 0.116 -0.055 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOSstress3 <- 'PriBC ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
stress ~ beta*PriBC + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOSstress3 <- sem(modelOSstress3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress3, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_CS alpha -0.099 0.048 -2.078 0.038
## 4 stress ~ PriBC beta 0.014 0.068 0.213 0.831
## 5 stress ~ int_OST_CS tau 0.013 0.041 0.316 0.752
## 21 indirect := alpha*beta indirect -0.001 0.007 -0.198 0.843
## 22 direct := tau direct 0.013 0.041 0.315 0.753
## 23 total := tau+(alpha*beta) total 0.012 0.040 0.287 0.774
## ci.lower ci.upper
## 1 -0.193 0.002
## 4 -0.133 0.157
## 5 -0.076 0.097
## 21 -0.019 0.013
## 22 -0.076 0.097
## 23 -0.077 0.100
lavCor(fitOSstress3)
## PriBC stress i_OST_ ZCmmnS OSTchT
## PriBC 1.000
## stress -0.019 1.000
## int_OST_CS -0.126 -0.016 1.000
## ZCommunalStrength 0.108 -0.071 0.084 1.000
## OSTouchTest 0.118 -0.155 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOstress3 <- 'PriBC ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
stress ~ beta*PriBC + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOstress3 <- sem(modelCOstress3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress3, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_CS alpha 0.014 0.052 0.274 0.784
## 4 stress ~ PriBC beta -0.013 0.063 -0.201 0.841
## 5 stress ~ int_COT_CS tau -0.035 0.048 -0.721 0.471
## 21 indirect := alpha*beta indirect 0.000 0.003 -0.052 0.958
## 22 direct := tau direct -0.035 0.048 -0.719 0.472
## 23 total := tau+(alpha*beta) total -0.035 0.048 -0.723 0.470
## ci.lower ci.upper
## 1 -0.101 0.104
## 4 -0.152 0.096
## 5 -0.134 0.064
## 21 -0.008 0.007
## 22 -0.134 0.064
## 23 -0.135 0.066
lavCor(fitCOstress3)
## PriBC stress i_COT_ ZCmmnS ClsOTT
## PriBC 1.000
## stress -0.019 1.000
## int_COT_CS 0.021 -0.028 1.000
## ZCommunalStrength 0.108 -0.071 -0.051 1.000
## CloseOthersTouchTest 0.072 0.026 0.164 0.135 1.000
Controlling for main effects of Communal Strenght and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth3 <- 'PriBC ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
health ~ beta*PriBC + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSShealth3 <- sem(modelSShealth3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth3, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_CS alpha -0.041 0.042 -0.975 0.330
## 4 health ~ PriBC beta -0.118 0.085 -1.397 0.162
## 5 health ~ int_SST_CS tau -0.036 0.057 -0.638 0.524
## 21 indirect := alpha*beta indirect 0.005 0.007 0.737 0.461
## 22 direct := tau direct -0.036 0.057 -0.636 0.525
## 23 total := tau+(alpha*beta) total -0.032 0.057 -0.550 0.582
## ci.lower ci.upper
## 1 -0.127 0.048
## 4 -0.283 0.043
## 5 -0.139 0.086
## 21 -0.009 0.019
## 22 -0.139 0.086
## 23 -0.145 0.089
lavCor(fitSShealth3)
## PriBC health i_SST_ ZCmmnS SSTchT
## PriBC 1.000
## health -0.083 1.000
## int_SST_CS -0.062 -0.029 1.000
## ZCommunalStrength 0.108 -0.054 -0.005 1.000
## SSTouchTest 0.116 -0.065 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOShealth3 <- 'PriBC ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
health ~ beta*PriBC + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOShealth3 <- sem(modelOShealth3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth3, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_CS alpha -0.098 0.050 -1.948 0.051
## 4 health ~ PriBC beta -0.103 0.078 -1.318 0.187
## 5 health ~ int_OST_CS tau -0.015 0.065 -0.229 0.819
## 21 indirect := alpha*beta indirect 0.010 0.010 1.012 0.312
## 22 direct := tau direct -0.015 0.065 -0.229 0.819
## 23 total := tau+(alpha*beta) total -0.005 0.064 -0.073 0.941
## ci.lower ci.upper
## 1 -0.199 0.009
## 4 -0.260 0.042
## 5 -0.142 0.132
## 21 -0.007 0.038
## 22 -0.142 0.132
## 23 -0.123 0.137
lavCor(fitOShealth3)
## PriBC health i_OST_ ZCmmnS OSTchT
## PriBC 1.000
## health -0.083 1.000
## int_OST_CS -0.126 -0.023 1.000
## ZCommunalStrength 0.108 -0.054 0.084 1.000
## OSTouchTest 0.118 -0.130 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOhealth3 <- 'PriBC ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
health ~ beta*PriBC + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOhealth3 <- sem(modelCOhealth3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth3, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_CS alpha 0.014 0.054 0.250 0.803
## 4 health ~ PriBC beta -0.126 0.082 -1.538 0.124
## 5 health ~ int_COT_CS tau -0.085 0.064 -1.329 0.184
## 21 indirect := alpha*beta indirect -0.002 0.009 -0.199 0.843
## 22 direct := tau direct -0.085 0.064 -1.325 0.185
## 23 total := tau+(alpha*beta) total -0.087 0.064 -1.345 0.179
## ci.lower ci.upper
## 1 -0.094 0.127
## 4 -0.295 0.045
## 5 -0.211 0.037
## 21 -0.027 0.015
## 22 -0.211 0.037
## 23 -0.212 0.041
lavCor(fitCOhealth3)
## PriBC health i_COT_ ZCmmnS ClsOTT
## PriBC 1.000
## health -0.083 1.000
## int_COT_CS 0.021 -0.068 1.000
## ZCommunalStrength 0.108 -0.054 -0.051 1.000
## CloseOthersTouchTest 0.072 0.028 0.164 0.135 1.000
####################
4b: Then examining whether reflection/rumination as mediator onto health and stress
Controlling for main effects of Communal Strenght and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress4 <- 'reflection ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
stress ~ beta*reflection + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSSstress4 <- sem(modelSSstress4, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress4, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_SST_CS alpha -0.018 0.070 -0.257 0.797
## 4 stress ~ reflection beta -0.275 0.033 -8.288 0.000
## 5 stress ~ int_SST_CS tau -0.003 0.042 -0.079 0.937
## 21 indirect := alpha*beta indirect 0.005 0.020 0.255 0.799
## 22 direct := tau direct -0.003 0.042 -0.078 0.937
## 23 total := tau+(alpha*beta) total 0.002 0.045 0.037 0.971
## ci.lower ci.upper
## 1 -0.188 0.114
## 4 -0.340 -0.202
## 5 -0.097 0.075
## 21 -0.030 0.050
## 22 -0.097 0.075
## 23 -0.091 0.085
lavCor(fitSSstress4)
## rflctn stress i_SST_ ZCmmnS SSTchT
## reflection 1.000
## stress -0.387 1.000
## int_SST_CS -0.014 0.002 1.000
## ZCommunalStrength 0.178 -0.071 -0.005 1.000
## SSTouchTest 0.223 -0.055 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOSstress4 <- 'reflection ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
stress ~ beta*reflection + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOSstress4 <- sem(modelOSstress4, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress4, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_OST_CS alpha -0.081 0.062 -1.294 0.196
## 4 stress ~ reflection beta -0.260 0.035 -7.486 0.000
## 5 stress ~ int_OST_CS tau -0.018 0.038 -0.480 0.631
## 21 indirect := alpha*beta indirect 0.021 0.017 1.263 0.207
## 22 direct := tau direct -0.018 0.039 -0.479 0.632
## 23 total := tau+(alpha*beta) total 0.003 0.040 0.063 0.949
## ci.lower ci.upper
## 1 -0.207 0.051
## 4 -0.318 -0.185
## 5 -0.103 0.060
## 21 -0.011 0.056
## 22 -0.103 0.060
## 23 -0.086 0.087
lavCor(fitOSstress4)
## rflctn stress i_OST_ ZCmmnS OSTchT
## reflection 1.000
## stress -0.387 1.000
## int_OST_CS -0.037 -0.016 1.000
## ZCommunalStrength 0.178 -0.071 0.084 1.000
## OSTouchTest 0.261 -0.155 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOstress4 <- 'reflection ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
stress ~ beta*reflection + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOstress4 <- sem(modelCOstress4, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress4, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_COT_CS alpha 0.083 0.067 1.237 0.216
## 4 stress ~ reflection beta -0.281 0.036 -7.882 0.000
## 5 stress ~ int_COT_CS tau -0.011 0.044 -0.263 0.792
## 21 indirect := alpha*beta indirect -0.023 0.020 -1.174 0.240
## 22 direct := tau direct -0.011 0.044 -0.263 0.793
## 23 total := tau+(alpha*beta) total -0.035 0.045 -0.772 0.440
## ci.lower ci.upper
## 1 -0.077 0.229
## 4 -0.363 -0.208
## 5 -0.087 0.086
## 21 -0.073 0.018
## 22 -0.087 0.086
## 23 -0.111 0.062
lavCor(fitCOstress4)
## rflctn stress i_COT_ ZCmmnS ClsOTT
## reflection 1.000
## stress -0.387 1.000
## int_COT_CS 0.077 -0.028 1.000
## ZCommunalStrength 0.178 -0.071 -0.051 1.000
## CloseOthersTouchTest 0.188 0.026 0.164 0.135 1.000
############################
Controlling for main effects of Communal Strenght and Touch
modelSSstress5 <- 'rumination ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
stress ~ beta*rumination + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSSstress5 <- sem(modelSSstress5, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress5, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_SST_CS alpha -0.086 0.085 -1.013 0.311
## 4 stress ~ rumination beta 0.319 0.023 13.705 0.000
## 5 stress ~ int_SST_CS tau 0.029 0.038 0.765 0.444
## 21 indirect := alpha*beta indirect -0.027 0.027 -1.002 0.317
## 22 direct := tau direct 0.029 0.038 0.763 0.446
## 23 total := tau+(alpha*beta) total 0.002 0.044 0.043 0.966
## ci.lower ci.upper
## 1 -0.253 0.099
## 4 0.270 0.365
## 5 -0.057 0.102
## 21 -0.085 0.032
## 22 -0.057 0.102
## 23 -0.097 0.092
lavCor(fitSSstress5)
## rumntn stress i_SST_ ZCmmnS SSTchT
## rumination 1.000
## stress 0.564 1.000
## int_SST_CS -0.059 0.002 1.000
## ZCommunalStrength -0.112 -0.071 -0.005 1.000
## SSTouchTest -0.078 -0.055 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOSstress5 <- 'rumination ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
stress ~ beta*rumination + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOSstress5 <- sem(modelOSstress5, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress5, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_OST_CS alpha 0.033 0.077 0.432 0.666
## 4 stress ~ rumination beta 0.313 0.021 14.839 0.000
## 5 stress ~ int_OST_CS tau -0.010 0.034 -0.297 0.766
## 21 indirect := alpha*beta indirect 0.010 0.024 0.431 0.667
## 22 direct := tau direct -0.010 0.034 -0.296 0.767
## 23 total := tau+(alpha*beta) total 0.000 0.041 0.011 0.991
## ci.lower ci.upper
## 1 -0.121 0.200
## 4 0.263 0.346
## 5 -0.077 0.053
## 21 -0.032 0.062
## 22 -0.077 0.053
## 23 -0.075 0.088
lavCor(fitOSstress5)
## rumntn stress i_OST_ ZCmmnS OSTchT
## rumination 1.000
## stress 0.564 1.000
## int_OST_CS 0.009 -0.016 1.000
## ZCommunalStrength -0.112 -0.071 0.084 1.000
## OSTouchTest -0.098 -0.155 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOstress5 <- 'rumination ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
stress ~ beta*rumination + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOstress5 <- sem(modelCOstress5, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress5, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_COT_CS alpha -0.245 0.071 -3.458 0.001
## 4 stress ~ rumination beta 0.324 0.024 13.759 0.000
## 5 stress ~ int_COT_CS tau 0.047 0.038 1.246 0.213
## 21 indirect := alpha*beta indirect -0.079 0.023 -3.437 0.001
## 22 direct := tau direct 0.047 0.038 1.243 0.214
## 23 total := tau+(alpha*beta) total -0.032 0.043 -0.745 0.456
## ci.lower ci.upper
## 1 -0.373 -0.090
## 4 0.273 0.374
## 5 -0.035 0.121
## 21 -0.121 -0.029
## 22 -0.035 0.121
## 23 -0.117 0.059
lavCor(fitCOstress5)
## rumntn stress i_COT_ ZCmmnS ClsOTT
## rumination 1.000
## stress 0.564 1.000
## int_COT_CS -0.150 -0.028 1.000
## ZCommunalStrength -0.112 -0.071 -0.051 1.000
## CloseOthersTouchTest -0.030 0.026 0.164 0.135 1.000
#######################
Controlling for main effects of Communal Strenght and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth4 <- 'rumination ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
health ~ beta*rumination + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSShealth4 <- sem(modelSShealth4, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth4, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_SST_CS alpha -0.086 0.083 -1.032 0.302
## 4 health ~ rumination beta 0.180 0.044 4.112 0.000
## 5 health ~ int_SST_CS tau -0.018 0.064 -0.289 0.773
## 21 indirect := alpha*beta indirect -0.015 0.016 -0.954 0.340
## 22 direct := tau direct -0.018 0.064 -0.288 0.773
## 23 total := tau+(alpha*beta) total -0.034 0.061 -0.552 0.581
## ci.lower ci.upper
## 1 -0.245 0.054
## 4 0.090 0.271
## 5 -0.146 0.116
## 21 -0.050 0.011
## 22 -0.146 0.116
## 23 -0.149 0.091
lavCor(fitSShealth4)
## rumntn health i_SST_ ZCmmnS SSTchT
## rumination 1.000
## health 0.239 1.000
## int_SST_CS -0.059 -0.029 1.000
## ZCommunalStrength -0.112 -0.054 -0.005 1.000
## SSTouchTest -0.078 -0.065 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOShealth4 <- 'rumination ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
health ~ beta*rumination + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOShealth4 <- sem(modelOShealth4, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth4, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_OST_CS alpha 0.033 0.093 0.354 0.724
## 4 health ~ rumination beta 0.175 0.037 4.745 0.000
## 5 health ~ int_OST_CS tau -0.015 0.061 -0.248 0.804
## 21 indirect := alpha*beta indirect 0.006 0.017 0.341 0.733
## 22 direct := tau direct -0.015 0.061 -0.248 0.804
## 23 total := tau+(alpha*beta) total -0.009 0.063 -0.148 0.882
## ci.lower ci.upper
## 1 -0.168 0.204
## 4 0.109 0.251
## 5 -0.138 0.114
## 21 -0.029 0.046
## 22 -0.138 0.114
## 23 -0.136 0.121
lavCor(fitOShealth4)
## rumntn health i_OST_ ZCmmnS OSTchT
## rumination 1.000
## health 0.239 1.000
## int_OST_CS 0.009 -0.023 1.000
## ZCommunalStrength -0.112 -0.054 0.084 1.000
## OSTouchTest -0.098 -0.130 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOhealth4 <- 'rumination ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
health ~ beta*rumination + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOhealth4 <- sem(modelCOhealth4, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth4, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_COT_CS alpha -0.245 0.083 -2.948 0.003
## 4 health ~ rumination beta 0.179 0.040 4.502 0.000
## 5 health ~ int_COT_CS tau -0.045 0.065 -0.696 0.487
## 21 indirect := alpha*beta indirect -0.044 0.018 -2.436 0.015
## 22 direct := tau direct -0.045 0.065 -0.694 0.488
## 23 total := tau+(alpha*beta) total -0.089 0.065 -1.364 0.172
## ci.lower ci.upper
## 1 -0.389 -0.060
## 4 0.107 0.253
## 5 -0.203 0.066
## 21 -0.084 -0.011
## 22 -0.203 0.066
## 23 -0.242 0.040
lavCor(fitCOhealth4)
## rumntn health i_COT_ ZCmmnS ClsOTT
## rumination 1.000
## health 0.239 1.000
## int_COT_CS -0.150 -0.068 1.000
## ZCommunalStrength -0.112 -0.054 -0.051 1.000
## CloseOthersTouchTest -0.030 0.028 0.164 0.135 1.000
#######################
Controlling for main effects of Communal Strenght and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth5 <- 'reflection ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
health ~ beta*reflection + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSShealth5 <- sem(modelSShealth5, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth5, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_SST_CS alpha -0.019 0.071 -0.272 0.786
## 4 health ~ reflection beta -0.218 0.051 -4.254 0.000
## 5 health ~ int_SST_CS tau -0.038 0.063 -0.599 0.549
## 21 indirect := alpha*beta indirect 0.004 0.016 0.268 0.788
## 22 direct := tau direct -0.038 0.063 -0.598 0.550
## 23 total := tau+(alpha*beta) total -0.034 0.059 -0.575 0.565
## ci.lower ci.upper
## 1 -0.172 0.112
## 4 -0.327 -0.114
## 5 -0.153 0.098
## 21 -0.027 0.037
## 22 -0.153 0.098
## 23 -0.138 0.089
lavCor(fitSShealth5)
## rflctn health i_SST_ ZCmmnS SSTchT
## reflection 1.000
## health -0.230 1.000
## int_SST_CS -0.014 -0.029 1.000
## ZCommunalStrength 0.178 -0.054 -0.005 1.000
## SSTouchTest 0.223 -0.065 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOShealth5 <- 'reflection ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
health ~ beta*reflection + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOShealth5 <- sem(modelOShealth5, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth5, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_OST_CS alpha -0.082 0.074 -1.105 0.269
## 4 health ~ reflection beta -0.202 0.051 -3.929 0.000
## 5 health ~ int_OST_CS tau -0.028 0.067 -0.422 0.673
## 21 indirect := alpha*beta indirect 0.017 0.015 1.085 0.278
## 22 direct := tau direct -0.028 0.067 -0.421 0.674
## 23 total := tau+(alpha*beta) total -0.012 0.064 -0.183 0.855
## ci.lower ci.upper
## 1 -0.219 0.059
## 4 -0.315 -0.108
## 5 -0.145 0.102
## 21 -0.012 0.046
## 22 -0.145 0.102
## 23 -0.122 0.117
lavCor(fitOShealth5)
## rflctn health i_OST_ ZCmmnS OSTchT
## reflection 1.000
## health -0.230 1.000
## int_OST_CS -0.037 -0.023 1.000
## ZCommunalStrength 0.178 -0.054 0.084 1.000
## OSTouchTest 0.261 -0.130 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOhealth5 <- 'reflection ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
health ~ beta*reflection + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOhealth5 <- sem(modelCOhealth5, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth5, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_COT_CS alpha 0.081 0.066 1.235 0.217
## 4 health ~ reflection beta -0.229 0.049 -4.676 0.000
## 5 health ~ int_COT_CS tau -0.067 0.068 -0.986 0.324
## 21 indirect := alpha*beta indirect -0.019 0.017 -1.118 0.263
## 22 direct := tau direct -0.067 0.068 -0.984 0.325
## 23 total := tau+(alpha*beta) total -0.085 0.068 -1.258 0.208
## ci.lower ci.upper
## 1 -0.035 0.230
## 4 -0.340 -0.148
## 5 -0.202 0.082
## 21 -0.054 0.007
## 22 -0.202 0.082
## 23 -0.212 0.056
lavCor(fitCOhealth5)
## rflctn health i_COT_ ZCmmnS ClsOTT
## reflection 1.000
## health -0.230 1.000
## int_COT_CS 0.077 -0.068 1.000
## ZCommunalStrength 0.178 -0.054 -0.051 1.000
## CloseOthersTouchTest 0.188 0.028 0.164 0.135 1.000
####################
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress_refl2 <- 'reflection ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
PriBC ~ a2*int_SST_CS + d*reflection + ZCommunalStrength + SSTouchTest
stress ~ c*int_SST_CS + b1*reflection + b2*PriBC + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSSstress_refl2 <- sem(modelSSstress_refl2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress_refl2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_SST_CS a1 -0.017 0.075 -0.223 0.823
## 4 PriBC ~ int_SST_CS a2 -0.040 0.045 -0.887 0.375
## 5 PriBC ~ reflection d 0.081 0.032 2.492 0.013
## 8 stress ~ int_SST_CS c 0.003 0.041 0.066 0.947
## 9 stress ~ reflection b1 -0.278 0.033 -8.544 0.000
## 10 stress ~ PriBC b2 0.053 0.056 0.943 0.346
## 28 indirect1 := a1*b1 indirect1 0.005 0.021 0.223 0.824
## 29 indirect2 := a2*b2 indirect2 -0.002 0.004 -0.503 0.615
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 -0.125 0.901
## 31 direct := c direct 0.003 0.041 0.066 0.947
## ci.lower ci.upper
## 1 -0.163 0.112
## 4 -0.129 0.052
## 5 0.023 0.141
## 8 -0.074 0.105
## 9 -0.338 -0.212
## 10 -0.053 0.169
## 28 -0.034 0.049
## 29 -0.014 0.004
## 30 -0.002 0.001
## 31 -0.074 0.105
lavCor(fitSSstress_refl2)
## rflctn PriBC stress i_SST_ ZCmmnS SSTchT
## reflection 1.000
## PriBC 0.165 1.000
## stress -0.387 -0.019 1.000
## int_SST_CS -0.014 -0.062 0.002 1.000
## ZCommunalStrength 0.178 0.108 -0.071 -0.005 1.000
## SSTouchTest 0.223 0.116 -0.055 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOSstress_refl2 <- 'reflection ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
PriBC ~ a2*int_OST_CS + d*reflection + ZCommunalStrength + OSTouchTest
stress ~ c*int_OST_CS + b1*reflection + b2*PriBC + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOSstress_refl2 <- sem(modelOSstress_refl2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress_refl2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_OST_CS a1 -0.079 0.069 -1.155 0.248
## 4 PriBC ~ int_OST_CS a2 -0.092 0.058 -1.599 0.110
## 5 PriBC ~ reflection d 0.070 0.030 2.356 0.018
## 8 stress ~ int_OST_CS c -0.003 0.044 -0.063 0.950
## 9 stress ~ reflection b1 -0.262 0.038 -6.975 0.000
## 10 stress ~ PriBC b2 0.061 0.057 1.071 0.284
## 28 indirect1 := a1*b1 indirect1 0.021 0.018 1.136 0.256
## 29 indirect2 := a2*b2 indirect2 -0.006 0.008 -0.739 0.460
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 -0.573 0.566
## 31 direct := c direct -0.003 0.044 -0.063 0.950
## ci.lower ci.upper
## 1 -0.222 0.046
## 4 -0.190 0.036
## 5 0.007 0.123
## 8 -0.083 0.090
## 9 -0.339 -0.189
## 10 -0.058 0.170
## 28 -0.012 0.062
## 29 -0.025 0.007
## 30 -0.002 0.000
## 31 -0.083 0.090
lavCor(fitOSstress_refl2)
## rflctn PriBC stress i_OST_ ZCmmnS OSTchT
## reflection 1.000
## PriBC 0.165 1.000
## stress -0.387 -0.019 1.000
## int_OST_CS -0.037 -0.126 -0.016 1.000
## ZCommunalStrength 0.178 0.108 -0.071 0.084 1.000
## OSTouchTest 0.261 0.118 -0.155 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOstress_refl2 <- 'reflection ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
PriBC ~ a2*int_COT_CS + d*reflection + ZCommunalStrength + CloseOthersTouchTest
stress ~ c*int_COT_CS + b1*reflection + b2*PriBC + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOstress_refl2 <- sem(modelCOstress_refl2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress_refl2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_COT_CS a1 0.083 0.071 1.174 0.240
## 4 PriBC ~ int_COT_CS a2 0.005 0.050 0.106 0.915
## 5 PriBC ~ reflection d 0.087 0.036 2.421 0.015
## 8 stress ~ int_COT_CS c -0.012 0.041 -0.301 0.763
## 9 stress ~ reflection b1 -0.285 0.036 -7.938 0.000
## 10 stress ~ PriBC b2 0.051 0.066 0.782 0.434
## 28 indirect1 := a1*b1 indirect1 -0.024 0.020 -1.156 0.248
## 29 indirect2 := a2*b2 indirect2 0.000 0.004 0.060 0.952
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.584 0.559
## 31 direct := c direct -0.012 0.041 -0.300 0.764
## ci.lower ci.upper
## 1 -0.063 0.202
## 4 -0.092 0.112
## 5 0.014 0.165
## 8 -0.095 0.071
## 9 -0.350 -0.211
## 10 -0.080 0.195
## 28 -0.065 0.020
## 29 -0.010 0.013
## 30 -0.001 0.002
## 31 -0.095 0.071
lavCor(fitCOstress_refl2)
## rflctn PriBC stress i_COT_ ZCmmnS ClsOTT
## reflection 1.000
## PriBC 0.165 1.000
## stress -0.387 -0.019 1.000
## int_COT_CS 0.077 0.021 -0.028 1.000
## ZCommunalStrength 0.178 0.108 -0.071 -0.051 1.000
## CloseOthersTouchTest 0.188 0.072 0.026 0.164 0.135 1.000
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth_refl2 <- 'reflection ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
PriBC ~ a2*int_SST_CS + d*reflection + ZCommunalStrength + SSTouchTest
health ~ c*int_SST_CS + b1*reflection + b2*PriBC + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSShealth_refl2 <- sem(modelSShealth_refl2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth_refl2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_SST_CS a1 -0.018 0.068 -0.262 0.793
## 4 PriBC ~ int_SST_CS a2 -0.039 0.041 -0.955 0.340
## 5 PriBC ~ reflection d 0.081 0.032 2.547 0.011
## 8 health ~ int_SST_CS c -0.039 0.059 -0.664 0.507
## 9 health ~ reflection b1 -0.211 0.054 -3.930 0.000
## 10 health ~ PriBC b2 -0.075 0.088 -0.854 0.393
## 28 indirect1 := a1*b1 indirect1 0.004 0.016 0.236 0.813
## 29 indirect2 := a2*b2 indirect2 0.003 0.005 0.554 0.580
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.165 0.869
## 31 direct := c direct -0.039 0.059 -0.662 0.508
## ci.lower ci.upper
## 1 -0.159 0.116
## 4 -0.123 0.043
## 5 0.015 0.145
## 8 -0.138 0.105
## 9 -0.308 -0.105
## 10 -0.251 0.102
## 28 -0.028 0.039
## 29 -0.009 0.014
## 30 -0.001 0.002
## 31 -0.138 0.105
lavCor(fitSShealth_refl2)
## rflctn PriBC health i_SST_ ZCmmnS SSTchT
## reflection 1.000
## PriBC 0.165 1.000
## health -0.230 -0.083 1.000
## int_SST_CS -0.014 -0.062 -0.029 1.000
## ZCommunalStrength 0.178 0.108 -0.054 -0.005 1.000
## SSTouchTest 0.223 0.116 -0.065 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOShealth_refl2 <- 'reflection ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
PriBC ~ a2*int_OST_CS + d*reflection + ZCommunalStrength + OSTouchTest
health ~ c*int_OST_CS + b1*reflection + b2*PriBC + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOShealth_refl2 <- sem(modelOShealth_refl2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth_refl2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_OST_CS a1 -0.080 0.068 -1.185 0.236
## 4 PriBC ~ int_OST_CS a2 -0.092 0.047 -1.964 0.050
## 5 PriBC ~ reflection d 0.070 0.033 2.131 0.033
## 8 health ~ int_OST_CS c -0.029 0.067 -0.434 0.664
## 9 health ~ reflection b1 -0.196 0.054 -3.627 0.000
## 10 health ~ PriBC b2 -0.069 0.078 -0.887 0.375
## 28 indirect1 := a1*b1 indirect1 0.016 0.015 1.045 0.296
## 29 indirect2 := a2*b2 indirect2 0.006 0.009 0.694 0.487
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.489 0.625
## 31 direct := c direct -0.029 0.067 -0.433 0.665
## ci.lower ci.upper
## 1 -0.217 0.059
## 4 -0.183 -0.003
## 5 0.005 0.132
## 8 -0.163 0.109
## 9 -0.305 -0.074
## 10 -0.219 0.110
## 28 -0.011 0.058
## 29 -0.014 0.026
## 30 -0.001 0.002
## 31 -0.163 0.109
lavCor(fitOShealth_refl2)
## rflctn PriBC health i_OST_ ZCmmnS OSTchT
## reflection 1.000
## PriBC 0.165 1.000
## health -0.230 -0.083 1.000
## int_OST_CS -0.037 -0.126 -0.023 1.000
## ZCommunalStrength 0.178 0.108 -0.054 0.084 1.000
## OSTouchTest 0.261 0.118 -0.130 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOhealth_refl2 <- 'reflection ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
PriBC ~ a2*int_COT_CS + d*reflection + ZCommunalStrength + CloseOthersTouchTest
health ~ c*int_COT_CS + b1*reflection + b2*PriBC + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOhealth_refl2 <- sem(modelCOhealth_refl2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth_refl2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 reflection ~ int_COT_CS a1 0.081 0.070 1.161 0.246
## 4 PriBC ~ int_COT_CS a2 0.006 0.048 0.119 0.905
## 5 PriBC ~ reflection d 0.087 0.035 2.466 0.014
## 8 health ~ int_COT_CS c -0.066 0.067 -0.989 0.323
## 9 health ~ reflection b1 -0.222 0.050 -4.442 0.000
## 10 health ~ PriBC b2 -0.077 0.086 -0.899 0.369
## 28 indirect1 := a1*b1 indirect1 -0.018 0.017 -1.089 0.276
## 29 indirect2 := a2*b2 indirect2 0.000 0.005 -0.084 0.933
## 30 total.indirect := a1*d*b2 total.indirect -0.001 0.001 -0.674 0.500
## 31 direct := c direct -0.066 0.067 -0.987 0.324
## ci.lower ci.upper
## 1 -0.053 0.240
## 4 -0.075 0.097
## 5 0.015 0.157
## 8 -0.190 0.065
## 9 -0.327 -0.133
## 10 -0.242 0.096
## 28 -0.058 0.012
## 29 -0.015 0.009
## 30 -0.003 0.001
## 31 -0.190 0.065
lavCor(fitCOhealth_refl2)
## rflctn PriBC health i_COT_ ZCmmnS ClsOTT
## reflection 1.000
## PriBC 0.165 1.000
## health -0.230 -0.083 1.000
## int_COT_CS 0.077 0.021 -0.068 1.000
## ZCommunalStrength 0.178 0.108 -0.054 -0.051 1.000
## CloseOthersTouchTest 0.188 0.072 0.028 0.164 0.135 1.000
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress_rum2 <- 'rumination ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
PriBC ~ a2*int_SST_CS + d*rumination + ZCommunalStrength + SSTouchTest
stress ~ c*int_SST_CS + b1*rumination + b2*PriBC + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSSstress_rum2 <- sem(modelSSstress_rum2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress_rum2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_SST_CS a1 -0.081 0.080 -1.011 0.312
## 4 PriBC ~ int_SST_CS a2 -0.041 0.040 -1.029 0.304
## 5 PriBC ~ rumination d -0.006 0.028 -0.196 0.845
## 8 stress ~ int_SST_CS c 0.032 0.039 0.802 0.422
## 9 stress ~ rumination b1 0.319 0.022 14.480 0.000
## 10 stress ~ PriBC b2 0.003 0.042 0.060 0.952
## 28 indirect1 := a1*b1 indirect1 -0.026 0.026 -1.007 0.314
## 29 indirect2 := a2*b2 indirect2 0.000 0.002 -0.045 0.964
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 0.008 0.994
## 31 direct := c direct 0.032 0.040 0.800 0.423
## ci.lower ci.upper
## 1 -0.232 0.078
## 4 -0.110 0.036
## 5 -0.062 0.051
## 8 -0.042 0.115
## 9 0.276 0.362
## 10 -0.095 0.084
## 28 -0.074 0.025
## 29 -0.006 0.004
## 30 0.000 0.000
## 31 -0.042 0.115
lavCor(fitSSstress_rum2)
## rumntn PriBC stress i_SST_ ZCmmnS SSTchT
## rumination 1.000
## PriBC -0.028 1.000
## stress 0.564 -0.019 1.000
## int_SST_CS -0.059 -0.062 0.002 1.000
## ZCommunalStrength -0.112 0.108 -0.071 -0.005 1.000
## SSTouchTest -0.078 0.116 -0.055 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOSstress_rum2 <- 'rumination ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
PriBC ~ a2*int_OST_CS + d*rumination + ZCommunalStrength + OSTouchTest
stress ~ c*int_OST_CS + b1*rumination + b2*PriBC + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOSstress_rum2 <- sem(modelOSstress_rum2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress_rum2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_OST_CS a1 0.044 0.088 0.505 0.614
## 4 PriBC ~ int_OST_CS a2 -0.099 0.056 -1.779 0.075
## 5 PriBC ~ rumination d 0.001 0.028 0.040 0.968
## 8 stress ~ int_OST_CS c -0.001 0.030 -0.049 0.961
## 9 stress ~ rumination b1 0.312 0.023 13.781 0.000
## 10 stress ~ PriBC b2 0.013 0.046 0.274 0.784
## 28 indirect1 := a1*b1 indirect1 0.014 0.028 0.496 0.620
## 29 indirect2 := a2*b2 indirect2 -0.001 0.005 -0.235 0.815
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 0.005 0.996
## 31 direct := c direct -0.001 0.030 -0.048 0.961
## ci.lower ci.upper
## 1 -0.131 0.212
## 4 -0.212 0.022
## 5 -0.059 0.053
## 8 -0.058 0.062
## 9 0.264 0.353
## 10 -0.068 0.107
## 28 -0.041 0.064
## 29 -0.014 0.009
## 30 0.000 0.000
## 31 -0.058 0.062
lavCor(fitOSstress_rum2)
## rumntn PriBC stress i_OST_ ZCmmnS OSTchT
## rumination 1.000
## PriBC -0.028 1.000
## stress 0.564 -0.019 1.000
## int_OST_CS 0.009 -0.126 -0.016 1.000
## ZCommunalStrength -0.112 0.108 -0.071 0.084 1.000
## OSTouchTest -0.098 0.118 -0.155 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOstress_rum2 <- 'rumination ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
PriBC ~ a2*int_COT_CS + d*rumination + ZCommunalStrength + CloseOthersTouchTest
stress ~ c*int_COT_CS + b1*rumination + b2*PriBC + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOstress_rum2 <- sem(modelCOstress_rum2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress_rum2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_COT_CS a1 -0.246 0.087 -2.824 0.005
## 4 PriBC ~ int_COT_CS a2 0.014 0.055 0.263 0.792
## 5 PriBC ~ rumination d -0.005 0.026 -0.187 0.852
## 8 stress ~ int_COT_CS c 0.046 0.038 1.217 0.223
## 9 stress ~ rumination b1 0.324 0.024 13.784 0.000
## 10 stress ~ PriBC b2 -0.006 0.046 -0.132 0.895
## 28 indirect1 := a1*b1 indirect1 -0.080 0.028 -2.875 0.004
## 29 indirect2 := a2*b2 indirect2 0.000 0.003 -0.034 0.973
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 -0.025 0.980
## 31 direct := c direct 0.046 0.038 1.214 0.225
## ci.lower ci.upper
## 1 -0.394 -0.044
## 4 -0.098 0.125
## 5 -0.062 0.045
## 8 -0.031 0.120
## 9 0.278 0.366
## 10 -0.094 0.081
## 28 -0.122 -0.012
## 29 -0.007 0.004
## 30 -0.001 0.000
## 31 -0.031 0.120
lavCor(fitCOstress_rum2)
## rumntn PriBC stress i_COT_ ZCmmnS ClsOTT
## rumination 1.000
## PriBC -0.028 1.000
## stress 0.564 -0.019 1.000
## int_COT_CS -0.150 0.021 -0.028 1.000
## ZCommunalStrength -0.112 0.108 -0.071 -0.051 1.000
## CloseOthersTouchTest -0.030 0.072 0.026 0.164 0.135 1.000
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth_rum2 <- 'rumination ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
PriBC ~ a2*int_SST_CS + d*rumination + ZCommunalStrength + SSTouchTest
health ~ c*int_SST_CS + b1*rumination + b2*PriBC + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSShealth_rum2 <- sem(modelSShealth_rum2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth_rum2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_SST_CS a1 -0.081 0.075 -1.074 0.283
## 4 PriBC ~ int_SST_CS a2 -0.039 0.038 -1.037 0.300
## 5 PriBC ~ rumination d -0.005 0.028 -0.193 0.847
## 8 health ~ int_SST_CS c -0.022 0.059 -0.379 0.705
## 9 health ~ rumination b1 0.180 0.038 4.687 0.000
## 10 health ~ PriBC b2 -0.114 0.081 -1.396 0.163
## 28 indirect1 := a1*b1 indirect1 -0.015 0.015 -1.001 0.317
## 29 indirect2 := a2*b2 indirect2 0.004 0.006 0.767 0.443
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 -0.100 0.920
## 31 direct := c direct -0.022 0.059 -0.378 0.705
## ci.lower ci.upper
## 1 -0.232 0.060
## 4 -0.118 0.034
## 5 -0.069 0.047
## 8 -0.151 0.091
## 9 0.095 0.250
## 10 -0.273 0.065
## 28 -0.050 0.011
## 29 -0.005 0.020
## 30 -0.001 0.001
## 31 -0.151 0.091
lavCor(fitSShealth_rum2)
## rumntn PriBC health i_SST_ ZCmmnS SSTchT
## rumination 1.000
## PriBC -0.028 1.000
## health 0.239 -0.083 1.000
## int_SST_CS -0.059 -0.062 -0.029 1.000
## ZCommunalStrength -0.112 0.108 -0.054 -0.005 1.000
## SSTouchTest -0.078 0.116 -0.065 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOShealth_rum2 <- 'rumination ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
PriBC ~ a2*int_OST_CS + d*rumination + ZCommunalStrength + OSTouchTest
health ~ c*int_OST_CS + b1*rumination + b2*PriBC + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOShealth_rum2 <- sem(modelOShealth_rum2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth_rum2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_OST_CS a1 0.044 0.081 0.541 0.589
## 4 PriBC ~ int_OST_CS a2 -0.099 0.050 -1.988 0.047
## 5 PriBC ~ rumination d 0.001 0.027 0.041 0.967
## 8 health ~ int_OST_CS c -0.022 0.063 -0.352 0.725
## 9 health ~ rumination b1 0.175 0.041 4.247 0.000
## 10 health ~ PriBC b2 -0.103 0.085 -1.208 0.227
## 28 indirect1 := a1*b1 indirect1 0.008 0.015 0.514 0.607
## 29 indirect2 := a2*b2 indirect2 0.010 0.010 1.004 0.315
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.000 -0.014 0.989
## 31 direct := c direct -0.022 0.063 -0.351 0.726
## ci.lower ci.upper
## 1 -0.121 0.215
## 4 -0.204 -0.013
## 5 -0.055 0.052
## 8 -0.129 0.103
## 9 0.102 0.255
## 10 -0.253 0.066
## 28 -0.022 0.041
## 29 -0.010 0.036
## 30 -0.001 0.001
## 31 -0.129 0.103
lavCor(fitOShealth_rum2)
## rumntn PriBC health i_OST_ ZCmmnS OSTchT
## rumination 1.000
## PriBC -0.028 1.000
## health 0.239 -0.083 1.000
## int_OST_CS 0.009 -0.126 -0.023 1.000
## ZCommunalStrength -0.112 0.108 -0.054 0.084 1.000
## OSTouchTest -0.098 0.118 -0.130 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOhealth_rum2 <- 'rumination ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
PriBC ~ a2*int_COT_CS + d*rumination + ZCommunalStrength + CloseOthersTouchTest
health ~ c*int_COT_CS + b1*rumination + b2*PriBC + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOhealth_rum2 <- sem(modelCOhealth_rum2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth_rum2, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 rumination ~ int_COT_CS a1 -0.246 0.075 -3.271 0.001
## 4 PriBC ~ int_COT_CS a2 0.018 0.052 0.338 0.736
## 5 PriBC ~ rumination d -0.005 0.028 -0.165 0.869
## 8 health ~ int_COT_CS c -0.044 0.060 -0.727 0.468
## 9 health ~ rumination b1 0.178 0.040 4.440 0.000
## 10 health ~ PriBC b2 -0.121 0.076 -1.605 0.108
## 28 indirect1 := a1*b1 indirect1 -0.044 0.018 -2.452 0.014
## 29 indirect2 := a2*b2 indirect2 -0.002 0.008 -0.277 0.782
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 -0.126 0.900
## 31 direct := c direct -0.044 0.060 -0.725 0.469
## ci.lower ci.upper
## 1 -0.410 -0.070
## 4 -0.085 0.112
## 5 -0.062 0.047
## 8 -0.176 0.061
## 9 0.103 0.269
## 10 -0.260 0.037
## 28 -0.087 -0.010
## 29 -0.026 0.009
## 30 -0.002 0.003
## 31 -0.176 0.061
lavCor(fitCOhealth_rum2)
## rumntn PriBC health i_COT_ ZCmmnS ClsOTT
## rumination 1.000
## PriBC -0.028 1.000
## health 0.239 -0.083 1.000
## int_COT_CS -0.150 0.021 -0.068 1.000
## ZCommunalStrength -0.112 0.108 -0.054 -0.051 1.000
## CloseOthersTouchTest -0.030 0.072 0.028 0.164 0.135 1.000
#########################
4a Then (if all goes well), interoception as first mediator, reflection or rumination as second mediator. Then repeat analyses with the other touch tests.
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress_refl3 <- 'PriBC ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
reflection ~ a2*int_SST_CS + d*PriBC + ZCommunalStrength + SSTouchTest
stress ~ c*int_SST_CS + b1*PriBC + b2*reflection + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSSstress_refl3 <- sem(modelSSstress_refl3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress_refl3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_CS a1 -0.041 0.043 -0.953 0.341
## 4 reflection ~ int_SST_CS a2 -0.008 0.071 -0.114 0.910
## 5 reflection ~ PriBC d 0.209 0.078 2.698 0.007
## 8 stress ~ int_SST_CS c 0.003 0.040 0.068 0.945
## 9 stress ~ PriBC b1 0.053 0.064 0.825 0.409
## 10 stress ~ reflection b2 -0.278 0.037 -7.572 0.000
## 28 indirect1 := a1*b1 indirect1 -0.002 0.005 -0.486 0.627
## 29 indirect2 := a2*b2 indirect2 0.002 0.019 0.119 0.906
## 30 total.indirect := a1*d*b2 total.indirect 0.002 0.003 0.827 0.408
## 31 direct := c direct 0.003 0.040 0.068 0.946
## ci.lower ci.upper
## 1 -0.140 0.042
## 4 -0.151 0.143
## 5 0.026 0.363
## 8 -0.080 0.082
## 9 -0.071 0.189
## 10 -0.345 -0.195
## 28 -0.014 0.004
## 29 -0.038 0.040
## 30 -0.002 0.009
## 31 -0.080 0.082
lavCor(fitSSstress_refl3)
## PriBC rflctn stress i_SST_ ZCmmnS SSTchT
## PriBC 1.000
## reflection 0.165 1.000
## stress -0.019 -0.387 1.000
## int_SST_CS -0.062 -0.014 0.002 1.000
## ZCommunalStrength 0.108 0.178 -0.071 -0.005 1.000
## SSTouchTest 0.116 0.223 -0.055 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOSstress_refl3 <- 'PriBC ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
reflection ~ a2*int_OST_CS + d*PriBC + ZCommunalStrength + OSTouchTest
stress ~ c*int_OST_CS + b1*PriBC + b2*reflection + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOSstress_refl3 <- sem(modelOSstress_refl3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress_refl3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_CS a1 -0.098 0.052 -1.888 0.059
## 4 reflection ~ int_OST_CS a2 -0.062 0.061 -1.009 0.313
## 5 reflection ~ PriBC d 0.180 0.080 2.259 0.024
## 8 stress ~ int_OST_CS c -0.003 0.043 -0.066 0.948
## 9 stress ~ PriBC b1 0.061 0.057 1.067 0.286
## 10 stress ~ reflection b2 -0.262 0.039 -6.725 0.000
## 28 indirect1 := a1*b1 indirect1 -0.006 0.008 -0.793 0.428
## 29 indirect2 := a2*b2 indirect2 0.016 0.017 0.952 0.341
## 30 total.indirect := a1*d*b2 total.indirect 0.005 0.004 1.154 0.249
## 31 direct := c direct -0.003 0.043 -0.066 0.948
## ci.lower ci.upper
## 1 -0.189 0.024
## 4 -0.188 0.045
## 5 -0.009 0.303
## 8 -0.086 0.091
## 9 -0.067 0.186
## 10 -0.346 -0.190
## 28 -0.025 0.008
## 29 -0.012 0.057
## 30 -0.001 0.014
## 31 -0.086 0.091
lavCor(fitOSstress_refl3)
## PriBC rflctn stress i_OST_ ZCmmnS OSTchT
## PriBC 1.000
## reflection 0.165 1.000
## stress -0.019 -0.387 1.000
## int_OST_CS -0.126 -0.037 -0.016 1.000
## ZCommunalStrength 0.108 0.178 -0.071 0.084 1.000
## OSTouchTest 0.118 0.261 -0.155 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOstress_refl3 <- 'PriBC ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
reflection ~ a2*int_COT_CS + d*PriBC + ZCommunalStrength + CloseOthersTouchTest
stress ~ c*int_COT_CS + b1*PriBC + b2*reflection + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOstress_refl3 <- sem(modelCOstress_refl3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress_refl3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_CS a1 0.012 0.049 0.255 0.799
## 4 reflection ~ int_COT_CS a2 0.080 0.068 1.181 0.238
## 5 reflection ~ PriBC d 0.226 0.089 2.544 0.011
## 8 stress ~ int_COT_CS c -0.012 0.046 -0.269 0.788
## 9 stress ~ PriBC b1 0.051 0.061 0.847 0.397
## 10 stress ~ reflection b2 -0.285 0.032 -8.790 0.000
## 28 indirect1 := a1*b1 indirect1 0.001 0.004 0.168 0.867
## 29 indirect2 := a2*b2 indirect2 -0.023 0.020 -1.147 0.251
## 30 total.indirect := a1*d*b2 total.indirect -0.001 0.003 -0.249 0.804
## 31 direct := c direct -0.012 0.046 -0.269 0.788
## ci.lower ci.upper
## 1 -0.081 0.114
## 4 -0.054 0.209
## 5 0.021 0.387
## 8 -0.097 0.085
## 9 -0.079 0.155
## 10 -0.346 -0.217
## 28 -0.007 0.012
## 29 -0.066 0.015
## 30 -0.007 0.007
## 31 -0.097 0.085
lavCor(fitCOstress_refl3)
## PriBC rflctn stress i_COT_ ZCmmnS ClsOTT
## PriBC 1.000
## reflection 0.165 1.000
## stress -0.019 -0.387 1.000
## int_COT_CS 0.021 0.077 -0.028 1.000
## ZCommunalStrength 0.108 0.178 -0.071 -0.051 1.000
## CloseOthersTouchTest 0.072 0.188 0.026 0.164 0.135 1.000
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth_refl3 <- 'PriBC ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
reflection ~ a2*int_SST_CS + d*PriBC + ZCommunalStrength + SSTouchTest
health ~ c*int_SST_CS + b1*PriBC + b2*reflection + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSShealth_refl3 <- sem(modelSShealth_refl3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth_refl3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_CS a1 -0.040 0.043 -0.932 0.351
## 4 reflection ~ int_SST_CS a2 -0.009 0.070 -0.134 0.893
## 5 reflection ~ PriBC d 0.209 0.083 2.510 0.012
## 8 health ~ int_SST_CS c -0.039 0.063 -0.623 0.533
## 9 health ~ PriBC b1 -0.075 0.087 -0.863 0.388
## 10 health ~ reflection b2 -0.211 0.050 -4.247 0.000
## 28 indirect1 := a1*b1 indirect1 0.003 0.007 0.450 0.653
## 29 indirect2 := a2*b2 indirect2 0.002 0.015 0.133 0.894
## 30 total.indirect := a1*d*b2 total.indirect 0.002 0.002 0.791 0.429
## 31 direct := c direct -0.039 0.063 -0.622 0.534
## ci.lower ci.upper
## 1 -0.137 0.041
## 4 -0.156 0.127
## 5 0.030 0.362
## 8 -0.163 0.076
## 9 -0.244 0.110
## 10 -0.296 -0.116
## 28 -0.010 0.021
## 29 -0.031 0.036
## 30 -0.002 0.008
## 31 -0.163 0.076
lavCor(fitSShealth_refl3)
## PriBC rflctn health i_SST_ ZCmmnS SSTchT
## PriBC 1.000
## reflection 0.165 1.000
## health -0.083 -0.230 1.000
## int_SST_CS -0.062 -0.014 -0.029 1.000
## ZCommunalStrength 0.108 0.178 -0.054 -0.005 1.000
## SSTouchTest 0.116 0.223 -0.065 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOShealth_refl3 <- 'PriBC ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
reflection ~ a2*int_OST_CS + d*PriBC + ZCommunalStrength + OSTouchTest
health ~ c*int_OST_CS + b1*PriBC + b2*reflection + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOShealth_refl3 <- sem(modelOShealth_refl3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth_refl3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_CS a1 -0.098 0.054 -1.808 0.071
## 4 reflection ~ int_OST_CS a2 -0.063 0.076 -0.826 0.409
## 5 reflection ~ PriBC d 0.180 0.068 2.658 0.008
## 8 health ~ int_OST_CS c -0.029 0.082 -0.355 0.722
## 9 health ~ PriBC b1 -0.069 0.082 -0.845 0.398
## 10 health ~ reflection b2 -0.196 0.050 -3.958 0.000
## 28 indirect1 := a1*b1 indirect1 0.007 0.009 0.763 0.446
## 29 indirect2 := a2*b2 indirect2 0.012 0.017 0.741 0.459
## 30 total.indirect := a1*d*b2 total.indirect 0.003 0.003 1.369 0.171
## 31 direct := c direct -0.029 0.082 -0.354 0.723
## ci.lower ci.upper
## 1 -0.195 0.018
## 4 -0.229 0.076
## 5 0.041 0.316
## 8 -0.203 0.125
## 9 -0.240 0.088
## 10 -0.306 -0.116
## 28 -0.012 0.031
## 29 -0.013 0.054
## 30 0.000 0.010
## 31 -0.203 0.125
lavCor(fitOShealth_refl3)
## PriBC rflctn health i_OST_ ZCmmnS OSTchT
## PriBC 1.000
## reflection 0.165 1.000
## health -0.083 -0.230 1.000
## int_OST_CS -0.126 -0.037 -0.023 1.000
## ZCommunalStrength 0.108 0.178 -0.054 0.084 1.000
## OSTouchTest 0.118 0.261 -0.130 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOhealth_refl3 <- 'PriBC ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
reflection ~ a2*int_COT_CS + d*PriBC + ZCommunalStrength + CloseOthersTouchTest
health ~ c*int_COT_CS + b1*PriBC + b2*reflection + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOhealth_refl3 <- sem(modelCOhealth_refl3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth_refl3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_CS a1 0.013 0.051 0.254 0.800
## 4 reflection ~ int_COT_CS a2 0.078 0.072 1.095 0.274
## 5 reflection ~ PriBC d 0.227 0.087 2.592 0.010
## 8 health ~ int_COT_CS c -0.066 0.063 -1.055 0.291
## 9 health ~ PriBC b1 -0.077 0.089 -0.862 0.389
## 10 health ~ reflection b2 -0.222 0.049 -4.491 0.000
## 28 indirect1 := a1*b1 indirect1 -0.001 0.005 -0.202 0.840
## 29 indirect2 := a2*b2 indirect2 -0.017 0.017 -1.019 0.308
## 30 total.indirect := a1*d*b2 total.indirect -0.001 0.003 -0.215 0.830
## 31 direct := c direct -0.066 0.063 -1.053 0.293
## ci.lower ci.upper
## 1 -0.098 0.109
## 4 -0.079 0.234
## 5 0.036 0.390
## 8 -0.200 0.053
## 9 -0.259 0.134
## 10 -0.331 -0.125
## 28 -0.014 0.007
## 29 -0.057 0.016
## 30 -0.007 0.006
## 31 -0.200 0.053
lavCor(fitCOhealth_refl3)
## PriBC rflctn health i_COT_ ZCmmnS ClsOTT
## PriBC 1.000
## reflection 0.165 1.000
## health -0.083 -0.230 1.000
## int_COT_CS 0.021 0.077 -0.068 1.000
## ZCommunalStrength 0.108 0.178 -0.054 -0.051 1.000
## CloseOthersTouchTest 0.072 0.188 0.028 0.164 0.135 1.000
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress_rum3 <- 'PriBC ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
rumination ~ a2*int_SST_CS + d*PriBC + ZCommunalStrength + SSTouchTest
stress ~ c*int_SST_CS + b1*PriBC + b2*rumination + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSSstress_rum3 <- sem(modelSSstress_rum3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress_rum3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_CS a1 -0.041 0.041 -0.984 0.325
## 4 rumination ~ int_SST_CS a2 -0.082 0.084 -0.972 0.331
## 5 rumination ~ PriBC d -0.023 0.110 -0.211 0.833
## 8 stress ~ int_SST_CS c 0.032 0.042 0.762 0.446
## 9 stress ~ PriBC b1 0.003 0.044 0.058 0.954
## 10 stress ~ rumination b2 0.319 0.022 14.817 0.000
## 28 indirect1 := a1*b1 indirect1 0.000 0.002 -0.047 0.963
## 29 indirect2 := a2*b2 indirect2 -0.026 0.027 -0.957 0.339
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.002 0.154 0.878
## 31 direct := c direct 0.032 0.042 0.760 0.447
## ci.lower ci.upper
## 1 -0.125 0.042
## 4 -0.235 0.088
## 5 -0.260 0.184
## 8 -0.056 0.103
## 9 -0.080 0.104
## 10 0.270 0.364
## 28 -0.005 0.005
## 29 -0.081 0.027
## 30 -0.005 0.005
## 31 -0.056 0.103
lavCor(fitSSstress_rum3)
## PriBC rumntn stress i_SST_ ZCmmnS SSTchT
## PriBC 1.000
## rumination -0.028 1.000
## stress -0.019 0.564 1.000
## int_SST_CS -0.062 -0.059 0.002 1.000
## ZCommunalStrength 0.108 -0.112 -0.071 -0.005 1.000
## SSTouchTest 0.116 -0.078 -0.055 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOSstress_rum3 <- 'PriBC ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
rumination ~ a2*int_OST_CS + d*PriBC + ZCommunalStrength + OSTouchTest
stress ~ c*int_OST_CS + b1*PriBC + b2*rumination + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOSstress_rum3 <- sem(modelOSstress_rum3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress_rum3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_CS a1 -0.099 0.046 -2.166 0.030
## 4 rumination ~ int_OST_CS a2 0.045 0.088 0.512 0.609
## 5 rumination ~ PriBC d 0.005 0.121 0.040 0.968
## 8 stress ~ int_OST_CS c -0.001 0.037 -0.040 0.968
## 9 stress ~ PriBC b1 0.013 0.049 0.259 0.796
## 10 stress ~ rumination b2 0.312 0.021 14.895 0.000
## 28 indirect1 := a1*b1 indirect1 -0.001 0.005 -0.239 0.811
## 29 indirect2 := a2*b2 indirect2 0.014 0.028 0.506 0.613
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.004 -0.038 0.969
## 31 direct := c direct -0.001 0.037 -0.040 0.968
## ci.lower ci.upper
## 1 -0.196 0.002
## 4 -0.108 0.240
## 5 -0.218 0.215
## 8 -0.079 0.086
## 9 -0.066 0.116
## 10 0.272 0.356
## 28 -0.014 0.008
## 29 -0.035 0.079
## 30 -0.008 0.008
## 31 -0.079 0.086
lavCor(fitOSstress_rum3)
## PriBC rumntn stress i_OST_ ZCmmnS OSTchT
## PriBC 1.000
## rumination -0.028 1.000
## stress -0.019 0.564 1.000
## int_OST_CS -0.126 0.009 -0.016 1.000
## ZCommunalStrength 0.108 -0.112 -0.071 0.084 1.000
## OSTouchTest 0.118 -0.098 -0.155 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOstress_rum3 <- 'PriBC ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
rumination ~ a2*int_COT_CS + d*PriBC + ZCommunalStrength + CloseOthersTouchTest
stress ~ c*int_COT_CS + b1*PriBC + b2*rumination + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOstress_rum3 <- sem(modelCOstress_rum3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress_rum3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_CS a1 0.016 0.058 0.269 0.788
## 4 rumination ~ int_COT_CS a2 -0.246 0.076 -3.215 0.001
## 5 rumination ~ PriBC d -0.020 0.109 -0.183 0.855
## 8 stress ~ int_COT_CS c 0.046 0.040 1.165 0.244
## 9 stress ~ PriBC b1 -0.006 0.044 -0.138 0.890
## 10 stress ~ rumination b2 0.324 0.022 14.515 0.000
## 28 indirect1 := a1*b1 indirect1 0.000 0.003 -0.035 0.972
## 29 indirect2 := a2*b2 indirect2 -0.080 0.025 -3.149 0.002
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.002 -0.045 0.964
## 31 direct := c direct 0.046 0.040 1.162 0.245
## ci.lower ci.upper
## 1 -0.115 0.125
## 4 -0.384 -0.076
## 5 -0.215 0.179
## 8 -0.028 0.139
## 9 -0.102 0.080
## 10 0.284 0.372
## 28 -0.008 0.004
## 29 -0.123 -0.021
## 30 -0.005 0.006
## 31 -0.028 0.139
lavCor(fitCOstress_rum3)
## PriBC rumntn stress i_COT_ ZCmmnS ClsOTT
## PriBC 1.000
## rumination -0.028 1.000
## stress -0.019 0.564 1.000
## int_COT_CS 0.021 -0.150 -0.028 1.000
## ZCommunalStrength 0.108 -0.112 -0.071 -0.051 1.000
## CloseOthersTouchTest 0.072 -0.030 0.026 0.164 0.135 1.000
Controlling for main effects of CS and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the two indirect (a1 * b1 and a2 * b2), total indirect (a1 * d * b2), direct (c), and total effect c + (a1 * b1) + (a2 * b2) + (a1 * d * b2). Table below the parameter estimates is the matrix of bivariate correlations.
modelSShealth_rum3 <- 'PriBC ~ a1*int_SST_CS + ZCommunalStrength + SSTouchTest
rumination ~ a2*int_SST_CS + d*PriBC + ZCommunalStrength + SSTouchTest
health ~ c*int_SST_CS + b1*PriBC + b2*rumination + ZCommunalStrength + SSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitSShealth_rum3 <- sem(modelSShealth_rum3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth_rum3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_SST_CS a1 -0.039 0.038 -1.015 0.310
## 4 rumination ~ int_SST_CS a2 -0.082 0.082 -0.998 0.318
## 5 rumination ~ PriBC d -0.023 0.103 -0.221 0.825
## 8 health ~ int_SST_CS c -0.022 0.062 -0.360 0.719
## 9 health ~ PriBC b1 -0.114 0.079 -1.435 0.151
## 10 health ~ rumination b2 0.180 0.039 4.587 0.000
## 28 indirect1 := a1*b1 indirect1 0.004 0.005 0.818 0.414
## 29 indirect2 := a2*b2 indirect2 -0.015 0.015 -0.963 0.335
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 0.168 0.867
## 31 direct := c direct -0.022 0.063 -0.359 0.720
## ci.lower ci.upper
## 1 -0.129 0.031
## 4 -0.241 0.087
## 5 -0.239 0.169
## 8 -0.142 0.102
## 9 -0.266 0.078
## 10 0.104 0.259
## 28 -0.007 0.014
## 29 -0.045 0.016
## 30 -0.002 0.002
## 31 -0.142 0.102
lavCor(fitSShealth_rum3)
## PriBC rumntn health i_SST_ ZCmmnS SSTchT
## PriBC 1.000
## rumination -0.028 1.000
## health -0.083 0.239 1.000
## int_SST_CS -0.062 -0.059 -0.029 1.000
## ZCommunalStrength 0.108 -0.112 -0.054 -0.005 1.000
## SSTouchTest 0.116 -0.078 -0.065 0.011 0.096 1.000
Controlling for main effects of CS and Touch
modelOShealth_rum3 <- 'PriBC ~ a1*int_OST_CS + ZCommunalStrength + OSTouchTest
rumination ~ a2*int_OST_CS + d*PriBC + ZCommunalStrength + OSTouchTest
health ~ c*int_OST_CS + b1*PriBC + b2*rumination + ZCommunalStrength + OSTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitOShealth_rum3 <- sem(modelOShealth_rum3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth_rum3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_OST_CS a1 -0.099 0.053 -1.860 0.063
## 4 rumination ~ int_OST_CS a2 0.044 0.091 0.491 0.623
## 5 rumination ~ PriBC d 0.005 0.117 0.040 0.968
## 8 health ~ int_OST_CS c -0.022 0.066 -0.334 0.739
## 9 health ~ PriBC b1 -0.103 0.079 -1.309 0.190
## 10 health ~ rumination b2 0.175 0.037 4.697 0.000
## 28 indirect1 := a1*b1 indirect1 0.010 0.010 1.052 0.293
## 29 indirect2 := a2*b2 indirect2 0.008 0.017 0.464 0.643
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.002 -0.032 0.974
## 31 direct := c direct -0.022 0.067 -0.333 0.739
## ci.lower ci.upper
## 1 -0.201 0.018
## 4 -0.109 0.264
## 5 -0.222 0.221
## 8 -0.143 0.123
## 9 -0.250 0.046
## 10 0.101 0.249
## 28 -0.005 0.038
## 29 -0.019 0.049
## 30 -0.006 0.005
## 31 -0.143 0.123
lavCor(fitOShealth_rum3)
## PriBC rumntn health i_OST_ ZCmmnS OSTchT
## PriBC 1.000
## rumination -0.028 1.000
## health -0.083 0.239 1.000
## int_OST_CS -0.126 0.009 -0.023 1.000
## ZCommunalStrength 0.108 -0.112 -0.054 0.084 1.000
## OSTouchTest 0.118 -0.098 -0.130 0.065 -0.011 1.000
Controlling for main effects of CS and Touch
modelCOhealth_rum3 <- 'PriBC ~ a1*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
rumination ~ a2*int_COT_CS + d*PriBC + ZCommunalStrength + CloseOthersTouchTest
health ~ c*int_COT_CS + b1*PriBC + b2*rumination + ZCommunalStrength + CloseOthersTouchTest
indirect1 := a1 * b1
indirect2 := a2 * b2
total.indirect := a1 * d * b2
direct := c
total := c + (a1 * b1) + (a2 * b2) + (a1 * d * b2)'
fitCOhealth_rum3 <- sem(modelCOhealth_rum3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth_rum3, rsquare = TRUE)[c(1,4,5,8:10,28:31),]
## lhs op rhs label est se z pvalue
## 1 PriBC ~ int_COT_CS a1 0.019 0.055 0.340 0.734
## 4 rumination ~ int_COT_CS a2 -0.246 0.080 -3.057 0.002
## 5 rumination ~ PriBC d -0.019 0.116 -0.160 0.873
## 8 health ~ int_COT_CS c -0.044 0.063 -0.691 0.490
## 9 health ~ PriBC b1 -0.121 0.084 -1.446 0.148
## 10 health ~ rumination b2 0.178 0.038 4.687 0.000
## 28 indirect1 := a1*b1 indirect1 -0.002 0.008 -0.296 0.767
## 29 indirect2 := a2*b2 indirect2 -0.044 0.017 -2.567 0.010
## 30 total.indirect := a1*d*b2 total.indirect 0.000 0.001 -0.047 0.963
## 31 direct := c direct -0.044 0.063 -0.689 0.491
## ci.lower ci.upper
## 1 -0.106 0.109
## 4 -0.383 -0.077
## 5 -0.280 0.190
## 8 -0.153 0.088
## 9 -0.317 0.023
## 10 0.114 0.263
## 28 -0.020 0.014
## 29 -0.077 -0.012
## 30 -0.003 0.003
## 31 -0.153 0.088
lavCor(fitCOhealth_rum3)
## PriBC rumntn health i_COT_ ZCmmnS ClsOTT
## PriBC 1.000
## rumination -0.028 1.000
## health -0.083 0.239 1.000
## int_COT_CS 0.021 -0.150 -0.068 1.000
## ZCommunalStrength 0.108 -0.112 -0.054 -0.051 1.000
## CloseOthersTouchTest 0.072 -0.030 0.028 0.164 0.135 1.000
##############
4e: All of the above: could you also show how quickly people share their emotion with the predictors above? (and, ideally, also use this variable as a mediator (HowLong).
Controlling for main effects of Communal Strenght and Touch. The output shows the standardized estimate (est), SE, z-value, p-value and 95%CI. The table shows the results for alpha, beta, and tau paths as well as for the indirect (alpha * beta), direct (tau), and total effect (tau + (alpha * beta)). Table below the parameter estimates is the matrix of bivariate correlations.
modelSSstress6 <- 'HowLong ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
stress ~ beta*HowLong + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSSstress6 <- sem(modelSSstress6, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSSstress6, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 HowLong ~ int_SST_CS alpha 0.066 0.048 1.378 0.168
## 4 stress ~ HowLong beta -0.003 0.060 -0.047 0.962
## 5 stress ~ int_SST_CS tau 0.002 0.051 0.030 0.976
## 21 indirect := alpha*beta indirect 0.000 0.005 -0.037 0.971
## 22 direct := tau direct 0.002 0.051 0.030 0.976
## 23 total := tau+(alpha*beta) total 0.001 0.051 0.026 0.979
## ci.lower ci.upper
## 1 -0.025 0.154
## 4 -0.114 0.144
## 5 -0.091 0.108
## 21 -0.011 0.013
## 22 -0.091 0.108
## 23 -0.095 0.108
lavCor(fitSSstress6)
## HowLng stress i_SST_ ZCmmnS SSTchT
## HowLong 1.000
## stress 0.007 1.000
## int_SST_CS 0.075 0.002 1.000
## ZCommunalStrength -0.125 -0.071 -0.005 1.000
## SSTouchTest -0.042 -0.055 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOSstress6 <- 'HowLong ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
stress ~ beta*HowLong + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOSstress6 <- sem(modelOSstress6, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOSstress6, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue ci.lower
## 1 HowLong ~ int_OST_CS alpha 0.047 0.058 0.808 0.419 -0.052
## 4 stress ~ HowLong beta 0.011 0.059 0.187 0.852 -0.104
## 5 stress ~ int_OST_CS tau 0.000 0.039 0.009 0.993 -0.068
## 21 indirect := alpha*beta indirect 0.001 0.004 0.128 0.898 -0.008
## 22 direct := tau direct 0.000 0.039 0.009 0.993 -0.068
## 23 total := tau+(alpha*beta) total 0.001 0.039 0.023 0.982 -0.068
## ci.upper
## 1 0.173
## 4 0.123
## 5 0.089
## 21 0.011
## 22 0.089
## 23 0.091
lavCor(fitOSstress6)
## HowLng stress i_OST_ ZCmmnS OSTchT
## HowLong 1.000
## stress 0.007 1.000
## int_OST_CS 0.048 -0.016 1.000
## ZCommunalStrength -0.125 -0.071 0.084 1.000
## OSTouchTest 0.079 -0.155 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOstress6 <- 'HowLong ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
stress ~ beta*HowLong + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOstress6 <- sem(modelCOstress6, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOstress6, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 HowLong ~ int_COT_CS alpha 0.032 0.051 0.620 0.535
## 4 stress ~ HowLong beta -0.001 0.061 -0.021 0.983
## 5 stress ~ int_COT_CS tau -0.033 0.046 -0.727 0.467
## 21 indirect := alpha*beta indirect 0.000 0.004 -0.010 0.992
## 22 direct := tau direct -0.033 0.046 -0.725 0.468
## 23 total := tau+(alpha*beta) total -0.033 0.046 -0.721 0.471
## ci.lower ci.upper
## 1 -0.057 0.150
## 4 -0.114 0.135
## 5 -0.127 0.072
## 21 -0.009 0.011
## 22 -0.127 0.072
## 23 -0.126 0.071
lavCor(fitCOstress6)
## HowLng stress i_COT_ ZCmmnS ClsOTT
## HowLong 1.000
## stress 0.007 1.000
## int_COT_CS 0.044 -0.028 1.000
## ZCommunalStrength -0.125 -0.071 -0.051 1.000
## CloseOthersTouchTest 0.004 0.026 0.164 0.135 1.000
#############
Controlling for main effects of Communal Strenght and Touch
modelSShealth6 <- 'HowLong ~ alpha*int_SST_CS + ZCommunalStrength + SSTouchTest
health ~ beta*HowLong + tau*int_SST_CS + ZCommunalStrength + SSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitSShealth6 <- sem(modelSShealth6, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitSShealth6, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 HowLong ~ int_SST_CS alpha 0.066 0.051 1.280 0.201
## 4 health ~ HowLong beta 0.059 0.076 0.770 0.441
## 5 health ~ int_SST_CS tau -0.037 0.057 -0.649 0.516
## 21 indirect := alpha*beta indirect 0.004 0.007 0.539 0.590
## 22 direct := tau direct -0.037 0.057 -0.647 0.517
## 23 total := tau+(alpha*beta) total -0.033 0.057 -0.578 0.563
## ci.lower ci.upper
## 1 -0.032 0.170
## 4 -0.092 0.222
## 5 -0.156 0.056
## 21 -0.008 0.026
## 22 -0.156 0.056
## 23 -0.153 0.066
lavCor(fitSShealth6)
## HowLng health i_SST_ ZCmmnS SSTchT
## HowLong 1.000
## health 0.051 1.000
## int_SST_CS 0.075 -0.029 1.000
## ZCommunalStrength -0.125 -0.054 -0.005 1.000
## SSTouchTest -0.042 -0.065 0.011 0.096 1.000
Controlling for main effects of Communal Strenght and Touch
modelOShealth6 <- 'HowLong ~ alpha*int_OST_CS + ZCommunalStrength + OSTouchTest
health ~ beta*HowLong + tau*int_OST_CS + ZCommunalStrength + OSTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitOShealth6 <- sem(modelOShealth6, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitOShealth6, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 HowLong ~ int_OST_CS alpha 0.047 0.056 0.840 0.401
## 4 health ~ HowLong beta 0.074 0.065 1.141 0.254
## 5 health ~ int_OST_CS tau -0.013 0.064 -0.208 0.835
## 21 indirect := alpha*beta indirect 0.003 0.006 0.635 0.526
## 22 direct := tau direct -0.013 0.064 -0.208 0.836
## 23 total := tau+(alpha*beta) total -0.010 0.064 -0.153 0.878
## ci.lower ci.upper
## 1 -0.042 0.170
## 4 -0.076 0.196
## 5 -0.116 0.132
## 21 -0.006 0.018
## 22 -0.116 0.132
## 23 -0.112 0.135
lavCor(fitOShealth6)
## HowLng health i_OST_ ZCmmnS OSTchT
## HowLong 1.000
## health 0.051 1.000
## int_OST_CS 0.048 -0.023 1.000
## ZCommunalStrength -0.125 -0.054 0.084 1.000
## OSTouchTest 0.079 -0.130 0.065 -0.011 1.000
Controlling for main effects of Communal Strenght and Touch
modelCOhealth6 <- 'HowLong ~ alpha*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
health ~ beta*HowLong + tau*int_COT_CS + ZCommunalStrength + CloseOthersTouchTest
indirect := alpha * beta
direct := tau
total := tau + (alpha * beta)'
fitCOhealth6 <- sem(modelCOhealth6, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
parameterEstimates(fitCOhealth6, rsquare = TRUE)[c(1, 4, 5, 21, 22, 23),]
## lhs op rhs label est se z pvalue
## 1 HowLong ~ int_COT_CS alpha 0.032 0.049 0.648 0.517
## 4 health ~ HowLong beta 0.061 0.065 0.935 0.350
## 5 health ~ int_COT_CS tau -0.088 0.063 -1.398 0.162
## 21 indirect := alpha*beta indirect 0.002 0.005 0.379 0.705
## 22 direct := tau direct -0.088 0.063 -1.394 0.163
## 23 total := tau+(alpha*beta) total -0.087 0.064 -1.362 0.173
## ci.lower ci.upper
## 1 -0.073 0.126
## 4 -0.079 0.186
## 5 -0.214 0.034
## 21 -0.006 0.017
## 22 -0.214 0.034
## 23 -0.211 0.034
lavCor(fitCOhealth6)
## HowLng health i_COT_ ZCmmnS ClsOTT
## HowLong 1.000
## health 0.051 1.000
## int_COT_CS 0.044 -0.068 1.000
## ZCommunalStrength -0.125 -0.054 -0.051 1.000
## CloseOthersTouchTest 0.004 0.028 0.164 0.135 1.000
########################
Some very rough guide to model respecification:
Look at the “Model test” table first. If the pvalue for the chisq test is significant, the model departs from the data.
To see how much are the data incompatible with the model, see the other fit indices. For an approximately fitting model, CFI and TLI should be >.95, RMSEA < .06.
If the model does not fit the data, we cannot rely on model parameters. Usually, they may be slightly off for a misspecified model (say in units), but with severe misspecification, they can be way off (sometimes even in tenths). The next step is then to look at the modification indices table. Collumn “mi” stands for the modification index. It represents the change in chi square statistics if you allow the given parameter. “~” stands for regression path (read as “predicted by”), “~~” denotes a correlation. “sepc.all” is the value of correlation or standardized regression path that the model missed.
Example: take Model3SST. The chisq value for the model is at 129. If it makes theoretical sense that reflection and rumination are correlated and you allow that model parameter, the chisq will drop by 108 (see the Modification indices table), which will give you a very well fitting model (if the model chisq roughly approaches the df, model fits very well). Without allowing for that correlation, the model assumes zero correlation between reflection and rumination. The data say there is a correlation ~.5, which was a huge departure from what the model assumed. In model respecification, it is best to do the least number of theoretically justifiable modifications. Consider especially those with huge modification indices until the chisq test statistics approaches the number of df.
path.model1 <- 'reflection ~ a*ZCommunalStrength + b*int_COT_CS + c*CloseOthersTouchTest
rumination ~ d*int_COT_CS + e*ZCommunalStrength + f*CloseOthersTouchTest
PriBC ~ g*reflection + h*rumination
stress ~ i*PriBC
health ~ j*stress'
fit.path.model1 <- sem(path.model1, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model1, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 312.923 15.000 0.000 0.292 -0.180
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.214 0.194 0.235 0.179 8854.372
modificationindices(fit.path.model1, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 54 stress ~ rumination 138.095 0.320 0.320 0.566 0.566
## 46 rumination ~ stress 135.776 0.971 0.971 0.550 0.550
## 35 rumination ~~ stress 135.022 0.533 0.533 0.548 0.548
## 30 reflection ~~ rumination 108.412 -0.659 -0.659 -0.473 -0.473
## 40 reflection ~ rumination 108.412 -0.405 -0.405 -0.500 -0.500
## 44 rumination ~ reflection 108.411 -0.634 -0.634 -0.514 -0.514
## 53 stress ~ reflection 66.621 -0.280 -0.280 -0.400 -0.400
## 32 reflection ~~ stress 65.817 -0.302 -0.302 -0.383 -0.383
## 42 reflection ~ stress 65.449 -0.547 -0.547 -0.382 -0.382
## 45 rumination ~ PriBC 40.081 -2.203 -2.203 -1.085 -1.085
## 43 reflection ~ health 22.256 -0.228 -0.228 -0.219 -0.219
## 47 rumination ~ health 22.117 0.283 0.283 0.221 0.221
## 41 reflection ~ PriBC 20.228 -1.301 -1.301 -0.791 -0.791
parameterEstimates(fit.path.model1, rsquare = TRUE)[c(2, 4, 7:10, 30:34),]
## lhs op rhs label est se z pvalue ci.lower
## 2 reflection ~ int_COT_CS b 0.111 0.072 1.550 0.121 -0.026
## 4 rumination ~ int_COT_CS d -0.260 0.079 -3.308 0.001 -0.388
## 7 PriBC ~ reflection g 0.123 0.041 3.004 0.003 0.044
## 8 PriBC ~ rumination h 0.037 0.034 1.083 0.279 -0.030
## 9 stress ~ PriBC i -0.021 0.066 -0.326 0.745 -0.138
## 10 health ~ stress j 0.547 0.058 9.365 0.000 0.443
## 30 reflection r2 reflection 0.078 NA NA NA NA
## 31 rumination r2 rumination 0.053 NA NA NA NA
## 32 PriBC r2 PriBC 0.045 NA NA NA NA
## 33 stress r2 stress 0.000 NA NA NA NA
## 34 health r2 health 0.157 NA NA NA NA
## ci.upper
## 2 0.255
## 4 -0.101
## 7 0.193
## 8 0.103
## 9 0.151
## 10 0.670
## 30 NA
## 31 NA
## 32 NA
## 33 NA
## 34 NA
lavCor(fit.path.model1)
## rflctn rumntn PriBC stress health ZCmmnS i_COT_
## reflection 1.000
## rumination -0.511 1.000
## PriBC 0.165 -0.028 1.000
## stress -0.387 0.564 -0.019 1.000
## health -0.230 0.239 -0.083 0.397 1.000
## ZCommunalStrength 0.178 -0.112 0.108 -0.071 -0.054 1.000
## int_COT_CS 0.077 -0.150 0.021 -0.028 -0.068 -0.051 1.000
## CloseOthersTouchTest 0.188 -0.030 0.072 0.026 0.028 0.135 0.164
## ClsOTT
## reflection
## rumination
## PriBC
## stress
## health
## ZCommunalStrength
## int_COT_CS
## CloseOthersTouchTest 1.000
For approximate fit (based on the RMSEA distribution). Statistical power for the detection of a likely misspecified model (RMSEA > .08). Models 1SST and 1OST have the same power.
df <- fit.path.model1@test[[1]]$df
alpha <- .05
n <- nrow(exdat)
rmsea0 <- .05 # RMSEA given H0
rmseaa <- .08 # RMSEA given Ha
ncp0 <- (n-1)*df*rmsea0**2 ;
ncpa <-(n-1)*df*rmseaa**2 ;
if(rmsea0 < rmseaa) {
cval <- qchisq(1-alpha,df=df,ncp=ncp0)
pwr.rmsea <- 1 - pchisq(cval,df=df,ncp=ncpa)
} else {
cval <- qchisq(alpha,df=df,ncp=ncp0)
pwr.rmsea <- pchisq(cval,df=df,ncp=ncpa)
}
rm(ncp0, ncpa, cval)
print(round(pwr.rmsea,10))
## [1] 0.6966705
semPaths(fit.path.model1, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9, edge.label.position = .4)
These are Bayes Factors based on model selection / information criteria approach as proposed by Wagenmakers, 2007. Each BF represents the relative evidence in the data favoring alternative hypothesis (parameter freely estimated) over the null (the given parameter fixed to 0). Bayes Factors using BIC approximation implicitly assume unit information prior which makes them rather conservative with regard to the alternative hypothesis.
f1 <- NULL
bf1 <- NULL
posterior1 <- NULL
for(i in letters[1:10]){
m1 <- 'reflection ~ a*ZCommunalStrength + b*int_COT_CS + c*CloseOthersTouchTest
rumination ~ d*int_COT_CS + e*ZCommunalStrength + f*CloseOthersTouchTest
PriBC ~ g*reflection + h*rumination
stress ~ i*PriBC
health ~ j*stress'
f1 <- sem(m1, data = exdat, mimic = "Mplus", missing = "ML")
bf1[i] <- 1/(exp((BIC(f1) - BIC(sem(m1, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior1[i] <- bf1[i]/(1+bf1[i])
}
data.frame(BF10 = bf1, Posterior = round(posterior1, 3))
## BF10 Posterior
## a 2.898978e+01 0.967
## b 2.205846e-01 0.181
## c 3.847242e+00 0.794
## d 9.753778e+00 0.907
## e 3.083495e+00 0.755
## f 5.416924e-02 0.051
## g 4.239699e+01 0.977
## h 1.252700e-01 0.111
## i 5.176796e-02 0.049
## j 5.810263e+14 1.000
path.model2 <- 'PriBC ~ a*ZCommunalStrength + b*int_COT_CS + c*CloseOthersTouchTest
reflection ~ d*PriBC
rumination ~ e*PriBC
stress ~ f*reflection + g*rumination
health ~ h*stress'
fit.path.model2 <- sem(path.model2, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model2, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 179.645 17.000 0.000 0.614 0.432
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.149 0.129 0.169 0.406 8708.953
modificationindices(fit.path.model2, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 32 reflection ~~ rumination 114.107 -0.705 -0.705 -0.506 -0.506
## 42 reflection ~ rumination 114.107 -0.410 -0.410 -0.506 -0.506
## 48 rumination ~ reflection 114.106 -0.642 -0.642 -0.520 -0.520
## 49 rumination ~ stress 112.485 6.696 6.696 3.660 3.660
## 43 reflection ~ stress 108.669 -1.378 -1.378 -0.930 -0.930
## 28 PriBC ~~ reflection 20.791 -1.299 -1.299 -1.906 -1.906
## 38 PriBC ~ reflection 20.791 -1.183 -1.183 -1.960 -1.960
parameterEstimates(fit.path.model2, rsquare = TRUE)[c(2, 4:8, 28:32),]
## lhs op rhs label est se z pvalue ci.lower
## 2 PriBC ~ int_COT_CS b 0.012 0.049 0.246 0.806 -0.084
## 4 reflection ~ PriBC d 0.274 0.093 2.946 0.003 0.077
## 5 rumination ~ PriBC e -0.057 0.125 -0.459 0.646 -0.278
## 6 stress ~ reflection f -0.094 0.033 -2.841 0.004 -0.169
## 7 stress ~ rumination g 0.280 0.024 11.503 0.000 0.232
## 8 health ~ stress h 0.547 0.063 8.721 0.000 0.441
## 28 PriBC r2 PriBC 0.015 NA NA NA NA
## 29 reflection r2 reflection 0.027 NA NA NA NA
## 30 rumination r2 rumination 0.001 NA NA NA NA
## 31 stress r2 stress 0.283 NA NA NA NA
## 32 health r2 health 0.148 NA NA NA NA
## ci.upper
## 2 0.123
## 4 0.456
## 5 0.214
## 6 -0.023
## 7 0.324
## 8 0.673
## 28 NA
## 29 NA
## 30 NA
## 31 NA
## 32 NA
lavCor(fit.path.model2)
## PriBC rflctn rumntn stress health ZCmmnS i_COT_
## PriBC 1.000
## reflection 0.165 1.000
## rumination -0.028 -0.511 1.000
## stress -0.019 -0.387 0.564 1.000
## health -0.083 -0.230 0.239 0.397 1.000
## ZCommunalStrength 0.108 0.178 -0.112 -0.071 -0.054 1.000
## int_COT_CS 0.021 0.077 -0.150 -0.028 -0.068 -0.051 1.000
## CloseOthersTouchTest 0.072 0.188 -0.030 0.026 0.028 0.135 0.164
## ClsOTT
## PriBC
## reflection
## rumination
## stress
## health
## ZCommunalStrength
## int_COT_CS
## CloseOthersTouchTest 1.000
For approximate fit (based on the RMSEA distribution). Statistical power for the detection of a likely misspecified model (RMSEA > .08). Models 2SST and 2OST have the same power.
df <- fit.path.model2@test[[1]]$df
alpha <- .05
n <- nrow(exdat)
rmsea0 <- .05 # RMSEA given H0
rmseaa <- .08 # RMSEA given Ha
ncp0 <- (n-1)*df*rmsea0**2 ;
ncpa <-(n-1)*df*rmseaa**2 ;
if(rmsea0 < rmseaa) {
cval <- qchisq(1-alpha,df=df,ncp=ncp0)
pwr.rmsea <- 1 - pchisq(cval,df=df,ncp=ncpa)
} else {
cval <- qchisq(alpha,df=df,ncp=ncp0)
pwr.rmsea <- pchisq(cval,df=df,ncp=ncpa)
}
rm(ncp0, ncpa, cval)
print(round(pwr.rmsea,10))
## [1] 0.7422685
semPaths(fit.path.model2, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9)
f2 <- NULL
bf2 <- NULL
posterior2 <- NULL
for(i in letters[1:8]){
m2 <- 'PriBC ~ a*ZCommunalStrength + b*int_COT_CS + c*CloseOthersTouchTest
reflection ~ d*PriBC
rumination ~ e*PriBC
stress ~ f*reflection + g*rumination
health ~ h*stress'
f2 <- sem(m2, data = exdat, mimic = "Mplus", missing = "ML")
bf2[i] <- 1/(exp((BIC(f2) - BIC(sem(m2, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior2[i] <- bf2[i]/(1+bf2[i])
}
data.frame(BF10 = bf2, Posterior = round(posterior2, 3))
## BF10 Posterior
## a 2.525082e-01 0.202
## b 5.052447e-02 0.048
## c 9.080751e-02 0.083
## d 1.928811e+01 0.951
## e 5.699043e-02 0.054
## f 3.459359e+00 0.776
## g 1.685678e+21 1.000
## h 5.810263e+14 1.000
path.model3 <- 'reflection ~ a*ZCommunalStrength + b*int_COT_CS + c*CloseOthersTouchTest
rumination ~ d*int_COT_CS + e*ZCommunalStrength + f*CloseOthersTouchTest
stress ~ g*reflection + h*rumination
health ~ i*stress
'
fit.path.model3 <- sem(path.model3, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model3, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 133.977 9.000 0.000 0.694 0.389
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.179 0.153 0.207 0.343 7832.214
modificationindices(fit.path.model3, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 27 reflection ~~ rumination 108.413 -0.659 -0.659 -0.473 -0.473
## 36 rumination ~ reflection 108.413 -0.634 -0.634 -0.514 -0.514
## 33 reflection ~ rumination 108.413 -0.405 -0.405 -0.500 -0.500
## 34 reflection ~ stress 103.196 -1.288 -1.288 -0.872 -0.872
## 37 rumination ~ stress 52.877 2.912 2.912 1.597 1.597
## 35 reflection ~ health 15.423 -0.202 -0.202 -0.194 -0.194
parameterEstimates(fit.path.model3, rsquare = TRUE)[c(2, 4, 7:9, 27:30),]
## lhs op rhs label est se z pvalue ci.lower
## 2 reflection ~ int_COT_CS b 0.111 0.075 1.490 0.136 -0.049
## 4 rumination ~ int_COT_CS d -0.260 0.083 -3.148 0.002 -0.423
## 7 stress ~ reflection g -0.094 0.037 -2.506 0.012 -0.174
## 8 stress ~ rumination h 0.280 0.026 10.772 0.000 0.231
## 9 health ~ stress i 0.547 0.065 8.411 0.000 0.421
## 27 reflection r2 reflection 0.078 NA NA NA NA
## 28 rumination r2 rumination 0.053 NA NA NA NA
## 29 stress r2 stress 0.287 NA NA NA NA
## 30 health r2 health 0.149 NA NA NA NA
## ci.upper
## 2 0.259
## 4 -0.083
## 7 -0.024
## 8 0.324
## 9 0.669
## 27 NA
## 28 NA
## 29 NA
## 30 NA
lavCor(fit.path.model3)
## rflctn rumntn stress health ZCmmnS i_COT_ ClsOTT
## reflection 1.000
## rumination -0.511 1.000
## stress -0.387 0.564 1.000
## health -0.230 0.239 0.397 1.000
## ZCommunalStrength 0.178 -0.112 -0.071 -0.054 1.000
## int_COT_CS 0.077 -0.150 -0.028 -0.068 -0.051 1.000
## CloseOthersTouchTest 0.188 -0.030 0.026 0.028 0.135 0.164 1.000
For approximate fit (based on the RMSEA distribution). Statistical power for the detection of a likely misspecified model (RMSEA > .08). Models 3SST and 3OST have the same power.
df <- fit.path.model3@test[[1]]$df
alpha <- .05
n <- nrow(exdat)
rmsea0 <- .05 # RMSEA given H0
rmseaa <- .08 # RMSEA given Ha
ncp0 <- (n-1)*df*rmsea0**2 ;
ncpa <-(n-1)*df*rmseaa**2 ;
if(rmsea0 < rmseaa) {
cval <- qchisq(1-alpha,df=df,ncp=ncp0)
pwr.rmsea <- 1 - pchisq(cval,df=df,ncp=ncpa)
} else {
cval <- qchisq(alpha,df=df,ncp=ncp0)
pwr.rmsea <- pchisq(cval,df=df,ncp=ncpa)
}
rm(ncp0, ncpa, cval)
print(round(pwr.rmsea,10))
## [1] 0.5169066
semPaths(fit.path.model3, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9, edge.label.position = .4)
f3 <- NULL
bf3 <- NULL
posterior3 <- NULL
for(i in letters[1:9]){
m3 <- 'reflection ~ a*ZCommunalStrength + b*int_COT_CS + c*CloseOthersTouchTest
rumination ~ d*int_COT_CS + e*ZCommunalStrength + f*CloseOthersTouchTest
stress ~ g*reflection + h*rumination
health ~ i*stress'
f3 <- sem(m3, data = exdat, mimic = "Mplus", missing = "ML")
bf3[i] <- 1/(exp((BIC(f3) - BIC(sem(m3, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior3[i] <- bf3[i]/(1+bf3[i])
}
data.frame(BF10 = bf3, Posterior = round(posterior3, 3))
## BF10 Posterior
## a 2.895745e+01 0.967
## b 2.204270e-01 0.181
## c 3.848010e+00 0.794
## d 9.741408e+00 0.907
## e 3.082508e+00 0.755
## f 5.416760e-02 0.051
## g 3.459359e+00 0.776
## h 1.685678e+21 1.000
## i 5.810263e+14 1.000
####################
path.model1SST <- 'reflection ~ a*ZCommunalStrength + b*int_SST_CS + c*SSTouchTest
rumination ~ d*int_SST_CS + e*ZCommunalStrength + f*SSTouchTest
PriBC ~ g*reflection + h*rumination
stress ~ i*PriBC
health ~ j*stress'
fit.path.model1SST <- sem(path.model1SST, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model1SST, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 310.810 15.000 0.000 0.289 -0.185
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.213 0.193 0.234 0.177 8899.100
modificationindices(fit.path.model1SST, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 54 stress ~ rumination 138.064 0.320 0.320 0.566 0.566
## 46 rumination ~ stress 135.248 0.978 0.978 0.554 0.554
## 35 rumination ~~ stress 134.483 0.538 0.538 0.552 0.552
## 30 reflection ~~ rumination 108.271 -0.662 -0.662 -0.475 -0.475
## 40 reflection ~ rumination 108.271 -0.396 -0.396 -0.489 -0.489
## 44 rumination ~ reflection 108.271 -0.641 -0.641 -0.519 -0.519
## 53 stress ~ reflection 66.602 -0.280 -0.280 -0.400 -0.400
## 32 reflection ~~ stress 62.703 -0.294 -0.294 -0.373 -0.373
## 42 reflection ~ stress 62.286 -0.531 -0.531 -0.371 -0.371
## 45 rumination ~ PriBC 53.422 -2.917 -2.917 -1.436 -1.436
## 41 reflection ~ PriBC 24.372 -1.342 -1.342 -0.816 -0.816
## 47 rumination ~ health 22.728 0.290 0.290 0.226 0.226
## 43 reflection ~ health 20.001 -0.215 -0.215 -0.207 -0.207
parameterEstimates(fit.path.model1SST, rsquare = TRUE)[c(2, 4, 7:10, 30:34),]
## lhs op rhs label est se z pvalue ci.lower
## 2 reflection ~ int_SST_CS b -0.008 0.084 -0.098 0.922 -0.171
## 4 rumination ~ int_SST_CS d -0.083 0.097 -0.853 0.394 -0.281
## 7 PriBC ~ reflection g 0.123 0.045 2.751 0.006 0.031
## 8 PriBC ~ rumination h 0.037 0.036 1.048 0.295 -0.036
## 9 stress ~ PriBC i -0.021 0.064 -0.336 0.737 -0.150
## 10 health ~ stress j 0.547 0.057 9.539 0.000 0.423
## 30 reflection r2 reflection 0.085 NA NA NA NA
## 31 rumination r2 rumination 0.029 NA NA NA NA
## 32 PriBC r2 PriBC 0.045 NA NA NA NA
## 33 stress r2 stress 0.000 NA NA NA NA
## 34 health r2 health 0.157 NA NA NA NA
## ci.upper
## 2 0.148
## 4 0.128
## 7 0.200
## 8 0.105
## 9 0.098
## 10 0.654
## 30 NA
## 31 NA
## 32 NA
## 33 NA
## 34 NA
lavCor(fit.path.model1SST)
## rflctn rumntn PriBC stress health ZCmmnS i_SST_ SSTchT
## reflection 1.000
## rumination -0.511 1.000
## PriBC 0.165 -0.028 1.000
## stress -0.387 0.564 -0.019 1.000
## health -0.230 0.239 -0.083 0.397 1.000
## ZCommunalStrength 0.178 -0.112 0.108 -0.071 -0.054 1.000
## int_SST_CS -0.014 -0.059 -0.062 0.002 -0.029 -0.005 1.000
## SSTouchTest 0.223 -0.078 0.116 -0.055 -0.065 0.096 0.011 1.000
semPaths(fit.path.model1SST, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9, edge.label.position = .4)
These are Bayes Factors based on model selection / information criteria approach as proposed by Wagenmakers, 2007. Each BF represents the relative evidence in the data favoring alternative hypothesis (parameter freely estimated) over the null (the given parameter fixed to 0). Bayes Factors using BIC approximation implicitly assume unit information prior which makes them rather conservative with regard to the alternative hypothesis.
f1b <- NULL
bf1b <- NULL
posterior1b <- NULL
for(i in letters[1:10]){
m1b <- 'reflection ~ a*ZCommunalStrength + b*int_SST_CS + c*SSTouchTest
rumination ~ d*int_SST_CS + e*ZCommunalStrength + f*SSTouchTest
PriBC ~ g*reflection + h*rumination
stress ~ i*PriBC
health ~ j*stress'
f1b <- sem(m1b, data = exdat, mimic = "Mplus", missing = "ML")
bf1b[i] <- 1/(exp((BIC(f1b) - BIC(sem(m1b, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior1b[i] <- bf1b[i]/(1+bf1b[i])
}
data.frame(BF10 = bf1b, Posterior = round(posterior1b, 3))
## BF10 Posterior
## a 2.104770e+01 0.955
## b 4.850414e-02 0.046
## c 5.650190e+02 0.998
## d 8.617919e-02 0.079
## e 1.190410e+00 0.543
## f 1.152505e-01 0.103
## g 4.239699e+01 0.977
## h 1.252700e-01 0.111
## i 5.176796e-02 0.049
## j 5.810263e+14 1.000
path.model2SST <- 'PriBC ~ a*ZCommunalStrength + b*int_SST_CS + c*SSTouchTest
reflection ~ d*PriBC
rumination ~ e*PriBC
stress ~ f*reflection + g*rumination
health ~ h*stress'
fit.path.model2SST <- sem(path.model2SST, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model2SST, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 170.317 17.000 0.000 0.631 0.458
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.144 0.125 0.164 0.417 8746.466
modificationindices(fit.path.model2SST, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 42 reflection ~ rumination 114.107 -0.410 -0.410 -0.506 -0.506
## 32 reflection ~~ rumination 114.107 -0.705 -0.705 -0.506 -0.506
## 48 rumination ~ reflection 114.107 -0.642 -0.642 -0.520 -0.520
## 49 rumination ~ stress 112.484 6.696 6.696 3.660 3.660
## 43 reflection ~ stress 108.669 -1.378 -1.378 -0.930 -0.930
## 38 PriBC ~ reflection 23.117 -0.920 -0.920 -1.524 -1.524
## 28 PriBC ~~ reflection 23.117 -1.010 -1.010 -1.483 -1.483
## 47 reflection ~ SSTouchTest 18.771 0.220 0.220 0.207 0.207
parameterEstimates(fit.path.model2SST, rsquare = TRUE)[c(2, 4:8, 28:32),]
## lhs op rhs label est se z pvalue ci.lower
## 2 PriBC ~ int_SST_CS b -0.041 0.040 -1.032 0.302 -0.117
## 4 reflection ~ PriBC d 0.274 0.092 2.974 0.003 0.075
## 5 rumination ~ PriBC e -0.057 0.110 -0.524 0.601 -0.289
## 6 stress ~ reflection f -0.094 0.037 -2.572 0.010 -0.170
## 7 stress ~ rumination g 0.280 0.023 12.110 0.000 0.236
## 8 health ~ stress h 0.547 0.072 7.629 0.000 0.396
## 28 PriBC r2 PriBC 0.026 NA NA NA NA
## 29 reflection r2 reflection 0.027 NA NA NA NA
## 30 rumination r2 rumination 0.001 NA NA NA NA
## 31 stress r2 stress 0.283 NA NA NA NA
## 32 health r2 health 0.148 NA NA NA NA
## ci.upper
## 2 0.045
## 4 0.438
## 5 0.176
## 6 -0.021
## 7 0.327
## 8 0.684
## 28 NA
## 29 NA
## 30 NA
## 31 NA
## 32 NA
lavCor(fit.path.model2SST)
## PriBC rflctn rumntn stress health ZCmmnS i_SST_ SSTchT
## PriBC 1.000
## reflection 0.165 1.000
## rumination -0.028 -0.511 1.000
## stress -0.019 -0.387 0.564 1.000
## health -0.083 -0.230 0.239 0.397 1.000
## ZCommunalStrength 0.108 0.178 -0.112 -0.071 -0.054 1.000
## int_SST_CS -0.062 -0.014 -0.059 0.002 -0.029 -0.005 1.000
## SSTouchTest 0.116 0.223 -0.078 -0.055 -0.065 0.096 0.011 1.000
semPaths(fit.path.model2SST, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9)
f2b <- NULL
bf2b <- NULL
posterior2b <- NULL
for(i in letters[1:8]){
m2b <- 'PriBC ~ a*ZCommunalStrength + b*int_SST_CS + c*SSTouchTest
reflection ~ d*PriBC
rumination ~ e*PriBC
stress ~ f*reflection + g*rumination
health ~ h*stress'
f2b <- sem(m2b, data = exdat, mimic = "Mplus", missing = "ML")
bf2b[i] <- 1/(exp((BIC(f2b) - BIC(sem(m2b, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior2b[i] <- bf2b[i]/(1+bf2b[i])
}
data.frame(BF10 = bf2b, Posterior = round(posterior2b, 3))
## BF10 Posterior
## a 2.212822e-01 0.181
## b 9.285938e-02 0.085
## c 5.793203e-01 0.367
## d 1.928811e+01 0.951
## e 5.699043e-02 0.054
## f 3.459359e+00 0.776
## g 1.685678e+21 1.000
## h 5.810263e+14 1.000
path.model3SST <- 'reflection ~ a*ZCommunalStrength + b*int_SST_CS + c*SSTouchTest
rumination ~ d*int_SST_CS + e*ZCommunalStrength + f*SSTouchTest
stress ~ g*reflection + h*rumination
health ~ i*stress
'
fit.path.model3SST <- sem(path.model3SST, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model3SST, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 129.122 9.000 0.000 0.701 0.402
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.176 0.149 0.203 0.346 7876.940
modificationindices(fit.path.model3SST, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 33 reflection ~ rumination 108.271 -0.396 -0.396 -0.489 -0.489
## 27 reflection ~~ rumination 108.271 -0.662 -0.662 -0.475 -0.475
## 36 rumination ~ reflection 108.271 -0.641 -0.641 -0.519 -0.519
## 34 reflection ~ stress 91.726 -1.180 -1.180 -0.799 -0.799
## 37 rumination ~ stress 61.783 3.733 3.733 2.046 2.046
parameterEstimates(fit.path.model3SST, rsquare = TRUE)[c(2, 4, 7:9, 27:30),]
## lhs op rhs label est se z pvalue ci.lower
## 2 reflection ~ int_SST_CS b -0.008 0.075 -0.111 0.912 -0.152
## 4 rumination ~ int_SST_CS d -0.083 0.090 -0.915 0.360 -0.253
## 7 stress ~ reflection g -0.094 0.034 -2.730 0.006 -0.175
## 8 stress ~ rumination h 0.280 0.026 10.932 0.000 0.228
## 9 health ~ stress i 0.547 0.064 8.564 0.000 0.426
## 27 reflection r2 reflection 0.085 NA NA NA NA
## 28 rumination r2 rumination 0.029 NA NA NA NA
## 29 stress r2 stress 0.287 NA NA NA NA
## 30 health r2 health 0.149 NA NA NA NA
## ci.upper
## 2 0.127
## 4 0.087
## 7 -0.030
## 8 0.335
## 9 0.681
## 27 NA
## 28 NA
## 29 NA
## 30 NA
lavCor(fit.path.model3SST)
## rflctn rumntn stress health ZCmmnS i_SST_ SSTchT
## reflection 1.000
## rumination -0.511 1.000
## stress -0.387 0.564 1.000
## health -0.230 0.239 0.397 1.000
## ZCommunalStrength 0.178 -0.112 -0.071 -0.054 1.000
## int_SST_CS -0.014 -0.059 0.002 -0.029 -0.005 1.000
## SSTouchTest 0.223 -0.078 -0.055 -0.065 0.096 0.011 1.000
semPaths(fit.path.model3SST, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9, edge.label.position = .4)
f3b <- NULL
bf3b <- NULL
posterior3b <- NULL
for(i in letters[1:9]){
m3b <- 'reflection ~ a*ZCommunalStrength + b*int_SST_CS + c*SSTouchTest
rumination ~ d*int_SST_CS + e*ZCommunalStrength + f*SSTouchTest
stress ~ g*reflection + h*rumination
health ~ i*stress'
f3b <- sem(m3b, data = exdat, mimic = "Mplus", missing = "ML")
bf3b[i] <- 1/(exp((BIC(f3b) - BIC(sem(m3b, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior3b[i] <- bf3b[i]/(1+bf3b[i])
}
data.frame(BF10 = bf3b, Posterior = round(posterior3b, 3))
## BF10 Posterior
## a 2.108136e+01 0.955
## b 4.850750e-02 0.046
## c 5.619050e+02 0.998
## d 8.614730e-02 0.079
## e 1.190988e+00 0.544
## f 1.151619e-01 0.103
## g 3.459359e+00 0.776
## h 1.685678e+21 1.000
## i 5.810263e+14 1.000
####################
path.model1OST <- 'reflection ~ a*ZCommunalStrength + b*int_OST_CS + c*OSTouchTest
rumination ~ d*int_OST_CS + e*ZCommunalStrength + f*OSTouchTest
PriBC ~ g*reflection + h*rumination
stress ~ i*PriBC
health ~ j*stress'
fit.path.model1OST <- sem(path.model1OST, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model1OST, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 316.806 15.000 0.000 0.309 -0.151
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.216 0.195 0.237 0.188 8886.025
modificationindices(fit.path.model1OST, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 54 stress ~ rumination 138.043 0.320 0.320 0.566 0.566
## 46 rumination ~ stress 129.490 0.956 0.956 0.541 0.541
## 35 rumination ~~ stress 128.848 0.525 0.525 0.539 0.539
## 44 rumination ~ reflection 105.672 -0.645 -0.645 -0.522 -0.522
## 40 reflection ~ rumination 105.672 -0.386 -0.386 -0.477 -0.477
## 30 reflection ~~ rumination 105.672 -0.642 -0.642 -0.461 -0.461
## 53 stress ~ reflection 66.643 -0.280 -0.280 -0.400 -0.400
## 32 reflection ~~ stress 53.835 -0.268 -0.268 -0.340 -0.340
## 42 reflection ~ stress 53.371 -0.484 -0.484 -0.338 -0.338
## 45 rumination ~ PriBC 39.289 -2.496 -2.496 -1.229 -1.229
## 41 reflection ~ PriBC 26.433 -1.190 -1.190 -0.724 -0.724
## 47 rumination ~ health 21.365 0.281 0.281 0.219 0.219
## 43 reflection ~ health 16.602 -0.192 -0.192 -0.186 -0.186
parameterEstimates(fit.path.model1OST, rsquare = TRUE)[c(2, 4, 7:10, 30:34),]
## lhs op rhs label est se z pvalue ci.lower
## 2 reflection ~ int_OST_CS b -0.086 0.071 -1.213 0.225 -0.228
## 4 rumination ~ int_OST_CS d 0.048 0.095 0.507 0.612 -0.137
## 7 PriBC ~ reflection g 0.123 0.042 2.905 0.004 0.032
## 8 PriBC ~ rumination h 0.037 0.033 1.119 0.263 -0.027
## 9 stress ~ PriBC i -0.021 0.064 -0.335 0.738 -0.149
## 10 health ~ stress j 0.547 0.061 8.942 0.000 0.425
## 30 reflection r2 reflection 0.117 NA NA NA NA
## 31 rumination r2 rumination 0.032 NA NA NA NA
## 32 PriBC r2 PriBC 0.045 NA NA NA NA
## 33 stress r2 stress 0.000 NA NA NA NA
## 34 health r2 health 0.157 NA NA NA NA
## ci.upper
## 2 0.059
## 4 0.228
## 7 0.201
## 8 0.112
## 9 0.119
## 10 0.668
## 30 NA
## 31 NA
## 32 NA
## 33 NA
## 34 NA
lavCor(fit.path.model1OST)
## rflctn rumntn PriBC stress health ZCmmnS i_OST_ OSTchT
## reflection 1.000
## rumination -0.511 1.000
## PriBC 0.165 -0.028 1.000
## stress -0.387 0.564 -0.019 1.000
## health -0.230 0.239 -0.083 0.397 1.000
## ZCommunalStrength 0.178 -0.112 0.108 -0.071 -0.054 1.000
## int_OST_CS -0.037 0.009 -0.126 -0.016 -0.023 0.084 1.000
## OSTouchTest 0.261 -0.098 0.118 -0.155 -0.130 -0.011 0.065 1.000
semPaths(fit.path.model1OST, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9, edge.label.position = .4)
These are Bayes Factors based on model selection / information criteria approach as proposed by Wagenmakers, 2007. Each BF represents the relative evidence in the data favoring alternative hypothesis (parameter freely estimated) over the null (the given parameter fixed to 0). Bayes Factors using BIC approximation implicitly assume unit information prior which makes them rather conservative with regard to the alternative hypothesis.
f1c <- NULL
bf1c <- NULL
posterior1c <- NULL
for(i in letters[1:10]){
m1c <- 'reflection ~ a*ZCommunalStrength + b*int_OST_CS + c*OSTouchTest
rumination ~ d*int_OST_CS + e*ZCommunalStrength + f*OSTouchTest
PriBC ~ g*reflection + h*rumination
stress ~ i*PriBC
health ~ j*stress'
f1c <- sem(m1c, data = exdat, mimic = "Mplus", missing = "ML")
bf1c[i] <- 1/(exp((BIC(f1c) - BIC(sem(m1c, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior1c[i] <- bf1c[i]/(1+bf1c[i])
}
data.frame(BF10 = bf1c, Posterior = round(posterior1c, 3))
## BF10 Posterior
## a 1.701583e+02 0.994
## b 1.355887e-01 0.119
## c 7.458742e+05 1.000
## d 5.864294e-02 0.055
## e 2.008626e+00 0.668
## f 4.421822e-01 0.307
## g 4.239699e+01 0.977
## h 1.252700e-01 0.111
## i 5.176796e-02 0.049
## j 5.810263e+14 1.000
path.model2OST <- 'PriBC ~ a*ZCommunalStrength + b*int_OST_CS + c*OSTouchTest
reflection ~ d*PriBC
rumination ~ e*PriBC
stress ~ f*reflection + g*rumination
health ~ h*stress'
fit.path.model2OST <- sem(path.model2OST, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model2OST, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 183.871 17.000 0.000 0.618 0.438
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.151 0.131 0.171 0.409 8740.948
modificationindices(fit.path.model2OST, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 48 rumination ~ reflection 114.107 -0.642 -0.642 -0.520 -0.520
## 32 reflection ~~ rumination 114.106 -0.705 -0.705 -0.506 -0.506
## 42 reflection ~ rumination 114.106 -0.410 -0.410 -0.506 -0.506
## 49 rumination ~ stress 112.482 6.696 6.696 3.660 3.660
## 43 reflection ~ stress 108.667 -1.378 -1.378 -0.930 -0.930
## 47 reflection ~ OSTouchTest 26.436 0.261 0.261 0.245 0.246
## 28 PriBC ~~ reflection 26.157 -0.815 -0.815 -1.196 -1.196
## 38 PriBC ~ reflection 26.157 -0.742 -0.742 -1.230 -1.230
parameterEstimates(fit.path.model2OST, rsquare = TRUE)[c(2, 4:8, 28:32),]
## lhs op rhs label est se z pvalue ci.lower
## 2 PriBC ~ int_OST_CS b -0.098 0.051 -1.942 0.052 -0.211
## 4 reflection ~ PriBC d 0.274 0.091 3.003 0.003 0.091
## 5 rumination ~ PriBC e -0.057 0.116 -0.495 0.621 -0.297
## 6 stress ~ reflection f -0.094 0.033 -2.826 0.005 -0.151
## 7 stress ~ rumination g 0.280 0.026 10.760 0.000 0.233
## 8 health ~ stress h 0.547 0.065 8.476 0.000 0.420
## 28 PriBC r2 PriBC 0.046 NA NA NA NA
## 29 reflection r2 reflection 0.027 NA NA NA NA
## 30 rumination r2 rumination 0.001 NA NA NA NA
## 31 stress r2 stress 0.283 NA NA NA NA
## 32 health r2 health 0.148 NA NA NA NA
## ci.upper
## 2 -0.002
## 4 0.445
## 5 0.145
## 6 -0.020
## 7 0.335
## 8 0.669
## 28 NA
## 29 NA
## 30 NA
## 31 NA
## 32 NA
lavCor(fit.path.model2OST)
## PriBC rflctn rumntn stress health ZCmmnS i_OST_ OSTchT
## PriBC 1.000
## reflection 0.165 1.000
## rumination -0.028 -0.511 1.000
## stress -0.019 -0.387 0.564 1.000
## health -0.083 -0.230 0.239 0.397 1.000
## ZCommunalStrength 0.108 0.178 -0.112 -0.071 -0.054 1.000
## int_OST_CS -0.126 -0.037 0.009 -0.016 -0.023 0.084 1.000
## OSTouchTest 0.118 0.261 -0.098 -0.155 -0.130 -0.011 0.065 1.000
semPaths(fit.path.model2OST, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9)
f2c <- NULL
bf2c <- NULL
posterior2c <- NULL
for(i in letters[1:8]){
m2c <- 'PriBC ~ a*ZCommunalStrength + b*int_OST_CS + c*OSTouchTest
reflection ~ d*PriBC
rumination ~ e*PriBC
stress ~ f*reflection + g*rumination
health ~ h*stress'
f2c <- sem(m2c, data = exdat, mimic = "Mplus", missing = "ML")
bf2c[i] <- 1/(exp((BIC(f2c) - BIC(sem(m2c, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior2c[i] <- bf2c[i]/(1+bf2c[i])
}
data.frame(BF10 = bf2c, Posterior = round(posterior2c, 3))
## BF10 Posterior
## a 6.107622e-01 0.379
## b 2.018850e+00 0.669
## c 2.045409e+00 0.672
## d 1.928811e+01 0.951
## e 5.699043e-02 0.054
## f 3.459359e+00 0.776
## g 1.685678e+21 1.000
## h 5.810263e+14 1.000
path.model3OST <- 'reflection ~ a*ZCommunalStrength + b*int_OST_CS + c*OSTouchTest
rumination ~ d*int_OST_CS + e*ZCommunalStrength + f*OSTouchTest
stress ~ g*reflection + h*rumination
health ~ i*stress
'
fit.path.model3OST <- sem(path.model3OST, data = exdat, se = "bootstrap", bootstrap = nboot, mimic = "Mplus", missing = "ML")
fitmeasures(fit.path.model3OST, c("chisq", "df", "pvalue", "cfi", "tli", "rmsea", "rmsea.ci.lower", "rmsea.ci.upper", "srmr_mplus", "pnfi", "bic"))
## chisq df pvalue cfi tli
## 129.019 9.000 0.000 0.712 0.423
## rmsea rmsea.ci.lower rmsea.ci.upper pnfi bic
## 0.175 0.149 0.203 0.351 7863.815
modificationindices(fit.path.model3OST, alpha = .05, sort. = TRUE, minimum.value = fit.path.model1@test[[1]]$df)
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 27 reflection ~~ rumination 105.656 -0.642 -0.642 -0.461 -0.461
## 36 rumination ~ reflection 105.656 -0.645 -0.645 -0.522 -0.522
## 33 reflection ~ rumination 105.656 -0.386 -0.386 -0.476 -0.476
## 34 reflection ~ stress 69.511 -0.981 -0.981 -0.665 -0.665
## 37 rumination ~ stress 42.172 3.052 3.052 1.675 1.675
parameterEstimates(fit.path.model3OST, rsquare = TRUE)[c(2, 4, 7:9, 27:30),]
## lhs op rhs label est se z pvalue ci.lower
## 2 reflection ~ int_OST_CS b -0.086 0.078 -1.104 0.270 -0.271
## 4 rumination ~ int_OST_CS d 0.048 0.093 0.520 0.603 -0.145
## 7 stress ~ reflection g -0.094 0.034 -2.762 0.006 -0.155
## 8 stress ~ rumination h 0.280 0.026 10.976 0.000 0.233
## 9 health ~ stress i 0.547 0.065 8.372 0.000 0.405
## 27 reflection r2 reflection 0.117 NA NA NA NA
## 28 rumination r2 rumination 0.032 NA NA NA NA
## 29 stress r2 stress 0.288 NA NA NA NA
## 30 health r2 health 0.149 NA NA NA NA
## ci.upper
## 2 0.037
## 4 0.237
## 7 -0.030
## 8 0.338
## 9 0.668
## 27 NA
## 28 NA
## 29 NA
## 30 NA
lavCor(fit.path.model3OST)
## rflctn rumntn stress health ZCmmnS i_OST_ OSTchT
## reflection 1.000
## rumination -0.511 1.000
## stress -0.387 0.564 1.000
## health -0.230 0.239 0.397 1.000
## ZCommunalStrength 0.178 -0.112 -0.071 -0.054 1.000
## int_OST_CS -0.037 0.009 -0.016 -0.023 0.084 1.000
## OSTouchTest 0.261 -0.098 -0.155 -0.130 -0.011 0.065 1.000
semPaths(fit.path.model3OST, layout = "tree2", rotation = 2, nDigits = 2, "Standardized", intercepts = FALSE, residuals = FALSE,
fade = FALSE, nCharNodes = 0, sizeMan = 9, edge.label.cex = .9, edge.label.position = .4)
f3c <- NULL
bf3c <- NULL
posterior3c <- NULL
for(i in letters[1:9]){
m3c <- 'reflection ~ a*ZCommunalStrength + b*int_OST_CS + c*OSTouchTest
rumination ~ d*int_OST_CS + e*ZCommunalStrength + f*OSTouchTest
stress ~ g*reflection + h*rumination
health ~ i*stress'
f3c <- sem(m3c, data = exdat, mimic = "Mplus", missing = "ML")
bf3c[i] <- 1/(exp((BIC(f3c) - BIC(sem(m3c, data = exdat, mimic = "Mplus", missing = "ML",
constraints = paste(i, '==', '0', sep = ""))))/2))
posterior3c[i] <- bf3c[i]/(1+bf3c[i])
}
data.frame(BF10 = bf3c, Posterior = round(posterior3c, 3))
## BF10 Posterior
## a 1.718350e+02 0.994
## b 1.363190e-01 0.120
## c 7.169339e+05 1.000
## d 5.883969e-02 0.056
## e 2.027192e+00 0.670
## f 4.382795e-01 0.305
## g 3.459359e+00 0.776
## h 1.685678e+21 1.000
## i 5.810263e+14 1.000