linear regression
library(car)
x <-filter(reac, action == "reac.videomean")
pairs.panels(subset(x, select =c(d.mb, d.int,d.pbc)))

pairs.panels(subset(x, select =c(pre.mb, pre.int,pre.pbc)))

corPlot(subset(x, select= c(pre.mb, pre.int, pre.pbc)),numbers=T)

m1<- lm(rmssd ~ d.pbc+d.mb+d.int, data = filter(reac,action=="reac.videomean"))
summary(m1)
##
## Call:
## lm(formula = rmssd ~ d.pbc + d.mb + d.int, data = filter(reac,
## action == "reac.videomean"))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.0237623 -0.0030658 0.0007267 0.0023258 0.0105601
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.0036279 0.0012616 -2.876 0.00609 **
## d.pbc 0.0030727 0.0012364 2.485 0.01665 *
## d.mb 0.0014290 0.0011470 1.246 0.21915
## d.int -0.0009157 0.0020147 -0.455 0.65159
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.005759 on 46 degrees of freedom
## Multiple R-squared: 0.1816, Adjusted R-squared: 0.1282
## F-statistic: 3.403 on 3 and 46 DF, p-value: 0.02536
plot(m1)




vif(m1)
## d.pbc d.mb d.int
## 1.077635 1.095654 1.036525
m2<- lm(rmssd ~ pre.pbc+pre.mb+pre.int, data = filter(reac,action=="reac.videomean"))
summary(m2)
##
## Call:
## lm(formula = rmssd ~ pre.pbc + pre.mb + pre.int, data = filter(reac,
## action == "reac.videomean"))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.0261912 -0.0030077 0.0004485 0.0024142 0.0128949
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.441e-04 5.676e-03 0.043 0.966
## pre.pbc -1.058e-03 1.013e-03 -1.045 0.302
## pre.mb 1.454e-05 1.108e-03 0.013 0.990
## pre.int 3.892e-03 2.359e-03 1.650 0.106
##
## Residual standard error: 0.006159 on 46 degrees of freedom
## Multiple R-squared: 0.06408, Adjusted R-squared: 0.003045
## F-statistic: 1.05 on 3 and 46 DF, p-value: 0.3796
plot(m2)




vif(m2)
## pre.pbc pre.mb pre.int
## 1.399714 1.191944 1.269641
HR
# y = hr
# x = reduction intention
# m1 = moral beliefs
# m2 = perceived behavioral control
model <- '
# outcome model
hr ~ c*d.pbc + b1*d.int + b2*d.mb
# mediator models
d.int ~ a1*d.pbc
d.mb ~ a2*d.pbc
# indirect effects (IDE)
d.intIDE := a1*b1
d.mbIDE := a2*b2
sumIDE := (a1*b1) + (a2*b2)
# total effect
total := c + (a1*b1) + (a2*b2)
d.int ~~ d.mb # model correlation between mediators
'
fit <- sem(model, data=x)
summary(fit, fit.measures=TRUE, standardize=TRUE, rsquare=TRUE)
## lavaan (0.5-23.1097) converged normally after 30 iterations
##
## Number of observations 50
##
## Estimator ML
## Minimum Function Test Statistic 0.000
## Degrees of freedom 0
## Minimum Function Value 0.0000000000000
##
## Model test baseline model:
##
## Minimum Function Test Statistic 5.905
## Degrees of freedom 6
## P-value 0.434
##
## User model versus baseline model:
##
## Comparative Fit Index (CFI) 0.000
## Tucker-Lewis Index (TLI) 1.000
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -245.308
## Loglikelihood unrestricted model (H1) -245.308
##
## Number of free parameters 9
## Akaike (AIC) 508.615
## Bayesian (BIC) 525.824
## Sample-size adjusted Bayesian (BIC) 497.574
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.000
## 90 Percent Confidence Interval 0.000 0.000
## P-value RMSEA <= 0.05 NA
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.000
##
## Parameter Estimates:
##
## Information Expected
## Standard Errors Standard
##
## Regressions:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## hr ~
## d.pbc (c) -0.235 0.499 -0.470 0.638 -0.235 -0.068
## d.int (b1) 0.508 0.813 0.624 0.532 0.508 0.089
## d.mb (b2) -0.223 0.463 -0.481 0.630 -0.223 -0.071
## d.int ~
## d.pbc (a1) 0.045 0.085 0.534 0.593 0.045 0.075
## d.mb ~
## d.pbc (a2) 0.265 0.149 1.776 0.076 0.265 0.244
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .d.int ~~
## .d.mb -0.051 0.042 -1.202 0.230 -0.051 -0.172
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .hr 5.403 1.081 5.000 0.000 5.403 0.979
## .d.int 0.168 0.034 5.000 0.000 0.168 0.994
## .d.mb 0.520 0.104 5.000 0.000 0.520 0.941
##
## R-Square:
## Estimate
## hr 0.021
## d.int 0.006
## d.mb 0.059
##
## Defined Parameters:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## d.intIDE 0.023 0.057 0.406 0.685 0.023 0.007
## d.mbIDE -0.059 0.127 -0.465 0.642 -0.059 -0.017
## sumIDE -0.036 0.146 -0.246 0.806 -0.036 -0.010
## total -0.271 0.484 -0.559 0.576 -0.271 -0.079
boot.fit <- parameterEstimates(fit, boot.ci.type="bca.simple")
print(boot.fit)
## lhs op rhs label est se z pvalue
## 1 hr ~ d.pbc c -0.235 0.499 -0.470 0.638
## 2 hr ~ d.int b1 0.508 0.813 0.624 0.532
## 3 hr ~ d.mb b2 -0.223 0.463 -0.481 0.630
## 4 d.int ~ d.pbc a1 0.045 0.085 0.534 0.593
## 5 d.mb ~ d.pbc a2 0.265 0.149 1.776 0.076
## 6 d.int ~~ d.mb -0.051 0.042 -1.202 0.230
## 7 hr ~~ hr 5.403 1.081 5.000 0.000
## 8 d.int ~~ d.int 0.168 0.034 5.000 0.000
## 9 d.mb ~~ d.mb 0.520 0.104 5.000 0.000
## 10 d.pbc ~~ d.pbc 0.468 0.000 NA NA
## 11 d.intIDE := a1*b1 d.intIDE 0.023 0.057 0.406 0.685
## 12 d.mbIDE := a2*b2 d.mbIDE -0.059 0.127 -0.465 0.642
## 13 sumIDE := (a1*b1)+(a2*b2) sumIDE -0.036 0.146 -0.246 0.806
## 14 total := c+(a1*b1)+(a2*b2) total -0.271 0.484 -0.559 0.576
## ci.lower ci.upper
## 1 -1.213 0.743
## 2 -1.086 2.101
## 3 -1.130 0.685
## 4 -0.121 0.212
## 5 -0.027 0.557
## 6 -0.134 0.032
## 7 3.285 7.521
## 8 0.102 0.234
## 9 0.316 0.723
## 10 0.468 0.468
## 11 -0.088 0.134
## 12 -0.308 0.190
## 13 -0.323 0.251
## 14 -1.220 0.679
semPaths(object = fit, what = "std", sizeMan = 10,sizeLat = 10,sizeInt = 10, edge.label.cex = 1.5)

RMSSD
# y = rmssd
# x = reduction intention
# m1 = moral beliefs
# m2 = perceived behavioral control
model <- '
# outcome model
rmssd ~ c*d.pbc + b1*d.int + b2*d.mb
# mediator models
d.int ~ a1*d.pbc
d.mb ~ a2*d.pbc
# indirect effects (IDE)
d.intIDE := a1*b1
d.mbIDE := a2*b2
sumIDE := (a1*b1) + (a2*b2)
# total effect
total := c + (a1*b1) + (a2*b2)
d.int ~~ d.mb # model correlation between mediators
'
fit <- sem(model, data=x)
## Warning in lav_data_full(data = data, group = group, cluster = cluster, :
## lavaan WARNING: some observed variances are (at least) a factor 1000 times
## larger than others; use varTable(fit) to investigate
summary(fit, fit.measures=TRUE, standardize=TRUE, rsquare=TRUE)
## lavaan (0.5-23.1097) converged normally after 39 iterations
##
## Number of observations 50
##
## Estimator ML
## Minimum Function Test Statistic 0.000
## Degrees of freedom 0
## Minimum Function Value 0.0000000000000
##
## Model test baseline model:
##
## Minimum Function Test Statistic 14.873
## Degrees of freedom 6
## P-value 0.021
##
## User model versus baseline model:
##
## Comparative Fit Index (CFI) 1.000
## Tucker-Lewis Index (TLI) 1.000
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) 56.799
## Loglikelihood unrestricted model (H1) 56.799
##
## Number of free parameters 9
## Akaike (AIC) -95.598
## Bayesian (BIC) -78.390
## Sample-size adjusted Bayesian (BIC) -106.640
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.000
## 90 Percent Confidence Interval 0.000 0.000
## P-value RMSEA <= 0.05 NA
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.000
##
## Parameter Estimates:
##
## Information Expected
## Standard Errors Standard
##
## Regressions:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## rmssd ~
## d.pbc (c) 0.003 0.001 2.591 0.010 0.003 0.344
## d.int (b1) -0.001 0.002 -0.474 0.636 -0.001 -0.062
## d.mb (b2) 0.001 0.001 1.299 0.194 0.001 0.174
## d.int ~
## d.pbc (a1) 0.045 0.085 0.534 0.593 0.045 0.075
## d.mb ~
## d.pbc (a2) 0.265 0.149 1.776 0.076 0.265 0.244
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .d.int ~~
## .d.mb -0.051 0.042 -1.202 0.230 -0.051 -0.172
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .rmssd 0.000 0.000 5.000 0.000 0.000 0.818
## .d.int 0.168 0.034 5.000 0.000 0.168 0.994
## .d.mb 0.520 0.104 5.000 0.000 0.520 0.941
##
## R-Square:
## Estimate
## rmssd 0.182
## d.int 0.006
## d.mb 0.059
##
## Defined Parameters:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## d.intIDE -0.000 0.000 -0.354 0.723 -0.000 -0.005
## d.mbIDE 0.000 0.000 1.048 0.294 0.000 0.042
## sumIDE 0.000 0.000 0.846 0.397 0.000 0.038
## total 0.003 0.001 2.921 0.003 0.003 0.382
boot.fit <- parameterEstimates(fit, boot.ci.type="bca.simple")
print(boot.fit)
## lhs op rhs label est se z pvalue
## 1 rmssd ~ d.pbc c 0.003 0.001 2.591 0.010
## 2 rmssd ~ d.int b1 -0.001 0.002 -0.474 0.636
## 3 rmssd ~ d.mb b2 0.001 0.001 1.299 0.194
## 4 d.int ~ d.pbc a1 0.045 0.085 0.534 0.593
## 5 d.mb ~ d.pbc a2 0.265 0.149 1.776 0.076
## 6 d.int ~~ d.mb -0.051 0.042 -1.202 0.230
## 7 rmssd ~~ rmssd 0.000 0.000 5.000 0.000
## 8 d.int ~~ d.int 0.168 0.034 5.000 0.000
## 9 d.mb ~~ d.mb 0.520 0.104 5.000 0.000
## 10 d.pbc ~~ d.pbc 0.468 0.000 NA NA
## 11 d.intIDE := a1*b1 d.intIDE 0.000 0.000 -0.354 0.723
## 12 d.mbIDE := a2*b2 d.mbIDE 0.000 0.000 1.048 0.294
## 13 sumIDE := (a1*b1)+(a2*b2) sumIDE 0.000 0.000 0.846 0.397
## 14 total := c+(a1*b1)+(a2*b2) total 0.003 0.001 2.921 0.003
## ci.lower ci.upper
## 1 0.001 0.005
## 2 -0.005 0.003
## 3 -0.001 0.004
## 4 -0.121 0.212
## 5 -0.027 0.557
## 6 -0.134 0.032
## 7 0.000 0.000
## 8 0.102 0.234
## 9 0.316 0.723
## 10 0.468 0.468
## 11 0.000 0.000
## 12 0.000 0.001
## 13 0.000 0.001
## 14 0.001 0.006
semPaths(object = fit, what = "std", sizeMan = 10,sizeLat = 10,sizeInt = 10, edge.label.cex = 1.5)

SDNN
# y = sdnn
# x = reduction intention
# m1 = moral beliefs
# m2 = perceived behavioral control
model <- '
# outcome model
sdnn ~ c*d.pbc + b1*d.int + b2*d.mb
# mediator models
d.int ~ a1*d.pbc
d.mb ~ a2*d.pbc
# indirect effects (IDE)
d.intIDE := a1*b1
d.mbIDE := a2*b2
sumIDE := (a1*b1) + (a2*b2)
# total effect
total := c + (a1*b1) + (a2*b2)
d.int ~~ d.mb # model correlation between mediators
'
fit <- sem(model, data=x)
## Warning in lav_data_full(data = data, group = group, cluster = cluster, :
## lavaan WARNING: some observed variances are (at least) a factor 1000 times
## larger than others; use varTable(fit) to investigate
summary(fit, fit.measures=TRUE, standardize=TRUE, rsquare=TRUE)
## lavaan (0.5-23.1097) converged normally after 32 iterations
##
## Number of observations 50
##
## Estimator ML
## Minimum Function Test Statistic 0.000
## Degrees of freedom 0
##
## Model test baseline model:
##
## Minimum Function Test Statistic 9.157
## Degrees of freedom 6
## P-value 0.165
##
## User model versus baseline model:
##
## Comparative Fit Index (CFI) 1.000
## Tucker-Lewis Index (TLI) 1.000
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) 26.306
## Loglikelihood unrestricted model (H1) 26.306
##
## Number of free parameters 9
## Akaike (AIC) -34.611
## Bayesian (BIC) -17.403
## Sample-size adjusted Bayesian (BIC) -45.653
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.000
## 90 Percent Confidence Interval 0.000 0.000
## P-value RMSEA <= 0.05 NA
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.000
##
## Parameter Estimates:
##
## Information Expected
## Standard Errors Standard
##
## Regressions:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## sdnn ~
## d.pbc (c) 0.003 0.002 1.459 0.145 0.003 0.205
## d.int (b1) -0.003 0.004 -0.870 0.384 -0.003 -0.120
## d.mb (b2) 0.002 0.002 0.828 0.408 0.002 0.117
## d.int ~
## d.pbc (a1) 0.045 0.085 0.534 0.593 0.045 0.075
## d.mb ~
## d.pbc (a2) 0.265 0.149 1.776 0.076 0.265 0.244
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .d.int ~~
## .d.mb -0.051 0.042 -1.202 0.230 -0.051 -0.172
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .sdnn 0.000 0.000 5.000 0.000 0.000 0.918
## .d.int 0.168 0.034 5.000 0.000 0.168 0.994
## .d.mb 0.520 0.104 5.000 0.000 0.520 0.941
##
## R-Square:
## Estimate
## sdnn 0.082
## d.int 0.006
## d.mb 0.059
##
## Defined Parameters:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## d.intIDE -0.000 0.000 -0.455 0.649 -0.000 -0.009
## d.mbIDE 0.000 0.001 0.751 0.453 0.000 0.029
## sumIDE 0.000 0.001 0.430 0.667 0.000 0.020
## total 0.003 0.002 1.631 0.103 0.003 0.225
boot.fit <- parameterEstimates(fit, boot.ci.type="bca.simple")
print(boot.fit)
## lhs op rhs label est se z pvalue
## 1 sdnn ~ d.pbc c 0.003 0.002 1.459 0.145
## 2 sdnn ~ d.int b1 -0.003 0.004 -0.870 0.384
## 3 sdnn ~ d.mb b2 0.002 0.002 0.828 0.408
## 4 d.int ~ d.pbc a1 0.045 0.085 0.534 0.593
## 5 d.mb ~ d.pbc a2 0.265 0.149 1.776 0.076
## 6 d.int ~~ d.mb -0.051 0.042 -1.202 0.230
## 7 sdnn ~~ sdnn 0.000 0.000 5.000 0.000
## 8 d.int ~~ d.int 0.168 0.034 5.000 0.000
## 9 d.mb ~~ d.mb 0.520 0.104 5.000 0.000
## 10 d.pbc ~~ d.pbc 0.468 0.000 NA NA
## 11 d.intIDE := a1*b1 d.intIDE 0.000 0.000 -0.455 0.649
## 12 d.mbIDE := a2*b2 d.mbIDE 0.000 0.001 0.751 0.453
## 13 sumIDE := (a1*b1)+(a2*b2) sumIDE 0.000 0.001 0.430 0.667
## 14 total := c+(a1*b1)+(a2*b2) total 0.003 0.002 1.631 0.103
## ci.lower ci.upper
## 1 -0.001 0.007
## 2 -0.010 0.004
## 3 -0.002 0.006
## 4 -0.121 0.212
## 5 -0.027 0.557
## 6 -0.134 0.032
## 7 0.000 0.000
## 8 0.102 0.234
## 9 0.316 0.723
## 10 0.468 0.468
## 11 -0.001 0.000
## 12 -0.001 0.002
## 13 -0.001 0.002
## 14 -0.001 0.008
semPaths(object = fit, what = "std", sizeMan = 10,sizeLat = 10,sizeInt = 10, edge.label.cex = 1.5)
