#Used packages
install.packages("lavaan")
install.packages("simsem")
install.packages("simstandard")
library("lavaan")
library("simsem")
library("simstandard")
#POPULATION MODEL
AUTmodelPOP.CHILDHOOD<-'
#MOTHER-CHILD RELATIONSHIP AUTONOMY in infancy, middle childhood, and late adolescence
MAUTONOMY1=~0.8*maut1_1+0.7*maut1_2+0.8*maut1_3+0.7*maut1_4
MAUTONOMY2=~0.8*maut2_1+0.7*maut2_2+0.8*maut2_3+0.7*maut2_4
MAUTONOMY3=~0.8*maut3_1+0.7*maut3_2+0.8*maut3_3+0.7*maut3_4
#FATHER-CHILD RELATIONSHIP AUTONOMY in infancy, middle childhood, and late adolescence
PAUTONOMY1=~0.7*paut1_1+0.8*paut1_2+0.7*paut1_3+0.8*paut1_4
PAUTONOMY2=~0.7*paut2_1+0.8*paut2_2+0.7*paut2_3+0.8*paut2_4
PAUTONOMY3=~0.7*paut3_1+0.8*paut3_2+0.7*paut3_3+0.8*paut3_4
#cross-sectional correlations between MOTHER-CHILD and FATHER-CHILD RELATIONSHIP AUTONOMY
MAUTONOMY1~~0.2*PAUTONOMY1
MAUTONOMY2~~0.15*PAUTONOMY2
MAUTONOMY3~~0.1*PAUTONOMY3
REAPPRAISAL=~1*REAPPRAISAL1
SUPPRESSION=~1*SUPPRESSION1
RUMINATION=~1*RUMINATION1
RUMINATION1~~0.20*RUMINATION1
REAPPRAISAL1~~0.25*REAPPRAISAL1
SUPPRESSION1~~0.25*SUPPRESSION1
#error correlations
maut1_1~~.07*maut2_1
maut1_1~~.03*maut3_1
maut2_1~~.07*maut3_1
maut1_2~~.07*maut2_2
maut1_2~~.03*maut3_2
maut2_2~~.07*maut3_2
maut1_3~~.07*maut2_3
maut1_3~~.03*maut3_3
maut2_3~~.07*maut3_3
maut1_4~~.07*maut2_4
maut1_4~~.03*maut3_4
maut2_4~~.07*maut3_4
paut1_1~~.07*paut2_1
paut1_1~~.03*paut3_1
paut2_1~~.07*paut3_1
paut1_2~~.07*paut2_2
paut1_2~~.03*paut3_2
paut2_2~~.07*paut3_2
paut1_3~~.07*paut2_3
paut1_3~~.03*paut3_3
paut2_3~~.07*paut3_3
paut1_4~~.07*paut2_4
paut1_4~~.03*paut3_4
paut2_4~~.07*paut3_4
#path coefficients
PAUTONOMY2~0.4*PAUTONOMY1+0.15*MAUTONOMY1+0*SEX+0.1*HOITO+0.2*SES
MAUTONOMY2~0.15*PAUTONOMY1+0.4*MAUTONOMY1+0*SEX+0.1*HOITO+0.2*SES
PAUTONOMY3~0.35*PAUTONOMY2+0.15*MAUTONOMY2+0*SEX+0*HOITO+0.1*SES
MAUTONOMY3~0.15*PAUTONOMY2+0.35*MAUTONOMY2+0*SEX+0*HOITO+0.1*SES
REAPPRAISAL~0.13*PAUTONOMY1+0.13*MAUTONOMY1+0.13*PAUTONOMY2+0.13*MAUTONOMY2+0.13*PAUTONOMY3+0.13*MAUTONOMY3+0*SEX+0*HOITO+0.1*SES
SUPPRESSION~(-0.13)*PAUTONOMY1+(-0.13)*MAUTONOMY1+(-0.13)*PAUTONOMY2+(-0.13)*MAUTONOMY2+(-0.13)*PAUTONOMY3+(-0.13)*MAUTONOMY3+(-0.2)*SEX+0*HOITO+(-0.1)*SES
RUMINATION~(-0.13)*PAUTONOMY1+(-0.13)*MAUTONOMY1+(-0.13)*PAUTONOMY2+(-0.13)*MAUTONOMY2+(-0.13)*PAUTONOMY3+(-0.13)*MAUTONOMY3+0.2*SEX+0*HOITO+(-0.1)*SES
#correlations between ER strategies
REAPPRAISAL~~(0.0)*SUPPRESSION
REAPPRAISAL~~(-0.1)*RUMINATION
SUPPRESSION~~0.1*RUMINATION
#correlations between covariates
SES~~0*HOITO
SEX~~0*SES
SEX~~0*HOITO
# Variances
maut1_1 ~~ 0.36 * maut1_1
maut2_1 ~~ 0.36 * maut2_1
maut1_2 ~~ 0.51 * maut1_2
maut2_2 ~~ 0.51 * maut2_2
maut1_3 ~~ 0.36 * maut1_3
maut2_3 ~~ 0.36 * maut2_3
maut1_4 ~~ 0.51 * maut1_4
maut2_4 ~~ 0.51 * maut2_4
paut1_1 ~~ 0.51 * paut1_1
paut2_1 ~~ 0.51 * paut2_1
paut1_2 ~~ 0.36 * paut1_2
paut2_2 ~~ 0.36 * paut2_2
paut1_3 ~~ 0.51 * paut1_3
paut2_3 ~~ 0.51 * paut2_3
paut1_4 ~~ 0.36 * paut1_4
paut2_4 ~~ 0.36 * paut2_4
REAPPRAISAL ~~ 0.7273162365475 * REAPPRAISAL
SUPPRESSION ~~ 0.6873162365475 * SUPPRESSION
RUMINATION ~~ 0.6873162365475 * RUMINATION
HOITO ~~ 1 * HOITO
SEX ~~ 1 * SEX
maut3_1 ~~ 0.36 * maut3_1
maut3_2 ~~ 0.51 * maut3_2
maut3_3 ~~ 0.36 * maut3_3
maut3_4 ~~ 0.51 * maut3_4
paut3_1 ~~ 0.51 * paut3_1
paut3_2 ~~ 0.36 * paut3_2
paut3_3 ~~ 0.51 * paut3_3
paut3_4 ~~ 0.36 * paut3_4
SES ~~ 1 * SES
MAUTONOMY1 ~~ 1 * MAUTONOMY1
MAUTONOMY2 ~~ 0.7435 * MAUTONOMY2
MAUTONOMY3 ~~ 0.791607375 * MAUTONOMY3
PAUTONOMY1 ~~ 1 * PAUTONOMY1
PAUTONOMY2 ~~ 0.7435 * PAUTONOMY2
PAUTONOMY3 ~~ 0.791607375 * PAUTONOMY3
'
#calculating variances for standardized parameters (variances have been added to model syntax)
m_complete <- model_complete(AUTmodelPOP.CHILDHOOD)
cat(m_complete)
#ANALYSIS MODEL
AUTmodel.CHILDHOOD<-'
#MOTHER-CHILD RELATIONSHIP AUTONOMY in infancy, middle childhood, and late adolescence
MAUTONOMY1=~maut1_1+maut1_2+maut1_3+maut1_4
MAUTONOMY2=~maut2_1+maut2_2+maut2_3+maut2_4
MAUTONOMY3=~maut3_1+maut3_2+maut3_3+maut3_4
#FATHER-CHILD RELATIONSHIP AUTONOMY in infancy, middle childhood, and late adolescence
PAUTONOMY1=~paut1_1+paut1_2+paut1_3+paut1_4
PAUTONOMY2=~paut2_1+paut2_2+paut2_3+paut2_4
PAUTONOMY3=~paut3_1+paut3_2+paut3_3+paut3_4
REAPPRAISAL=~1*REAPPRAISAL1
SUPPRESSION=~1*SUPPRESSION1
RUMINATION=~1*RUMINATION1
RUMINATION1~~0.20*RUMINATION1
REAPPRAISAL1~~0.25*REAPPRAISAL1
SUPPRESSION1~~0.25*SUPPRESSION1
#error correlations
maut1_1~~maut2_1
maut1_1~~maut3_1
maut2_1~~maut3_1
maut1_2~~maut2_2
maut1_2~~maut3_2
maut2_2~~maut3_2
maut1_3~~maut2_3
maut1_3~~maut3_3
maut2_3~~maut3_3
maut1_4~~maut2_4
maut1_4~~maut3_4
maut2_4~~maut3_4
paut1_1~~paut2_1
paut1_1~~paut3_1
paut2_1~~paut3_1
paut1_2~~paut2_2
paut1_2~~paut3_2
paut2_2~~paut3_2
paut1_3~~paut2_3
paut1_3~~paut3_3
paut2_3~~paut3_3
paut1_4~~paut2_4
paut1_4~~paut3_4
paut2_4~~paut3_4
#cross-sectional correlations between MOTHER-CHILD AND FATHER-CHILD RELATIONSHIP AUTONOMY
MAUTONOMY1~~PAUTONOMY1
MAUTONOMY2~~PAUTONOMY2
MAUTONOMY3~~PAUTONOMY3
#path coefficients
PAUTONOMY2~PA1*PAUTONOMY1+MA1*MAUTONOMY1+SEX+HOITO+SES
MAUTONOMY2~PA2*PAUTONOMY1+MA2*MAUTONOMY1+SEX+HOITO+SES
PAUTONOMY3~PA3*PAUTONOMY2+MA3*MAUTONOMY2+SEX+HOITO+SES
MAUTONOMY3~PA4*PAUTONOMY2+MA4*MAUTONOMY2+SEX+HOITO+SES
REAPPRAISAL~PARE1*PAUTONOMY1+MARE1*MAUTONOMY1+PARE2*PAUTONOMY2+MARE2*MAUTONOMY2+PARE3*PAUTONOMY3+MARE3*MAUTONOMY3+SEX+HOITO+SES
SUPPRESSION~PASU1*PAUTONOMY1+MASU1*MAUTONOMY1+PASU2*PAUTONOMY2+MASU2*MAUTONOMY2+PASU3*PAUTONOMY3+MASU3*MAUTONOMY3+SEX+HOITO+SES
RUMINATION~ PARU1*PAUTONOMY1+MARU1*MAUTONOMY1+PARU2*PAUTONOMY2+MARU2*MAUTONOMY2+PARU3*PAUTONOMY3+MARU3*MAUTONOMY3+SEX+HOITO+SES
#correlation between ER strategies
REAPPRAISAL ~~ SUPPRESSION
REAPPRAISAL ~~ RUMINATION
SUPPRESSION ~~ RUMINATION
'
#missing data structure
script<-'maut1_1~p(0)
maut1_2~p(0.0)
maut1_3~p(0.0)
maut1_4~p(0.0)
maut2_1~p(0.112)
maut2_2~p(0.112)
maut2_3~p(0.112)
maut2_4~p(0.112)
maut3_1~p(0.174)
maut3_2~p(0.174)
maut3_3~p(0.174)
maut3_4~p(0.174)
paut1_1~p(0.073)
paut1_2~p(0.073)
paut1_3~p(0.073)
paut1_4~p(0.073)
paut2_1~p(0.452)
paut2_2~p(0.452)
paut2_3~p(0.452)
paut2_4~p(0.452)
paut3_1~p(0.346)
paut3_2~p(0.346)
paut3_3~p(0.346)
paut3_4~p(0.346)
REAPPRAISAL1~p(0.196)
SUPPRESSION1~p(0.196)
RUMINATION1~p(0.196)
SEX~p(0.0)
HOITO~p(0.0)
SES~p(0.0)'
missingness<-miss(logit=script, m=0)
AUTanalysis.POPCHILDHOOD.CHILDHOOD <-sim(1000, n =546, model=AUTmodel.CHILDHOOD, seed=565, generate=AUTmodelPOP.CHILDHOOD, lavaanfun = "sem", missingness,
std.lv=T, cilevel=0.90, estimator="MLR")
Progress: 1 / 1000
Error in lav_options_set(opt) :
lavaan ERROR: estimator ML for ordered data is not supported yet. Use WLSMV instead.
Progress: 2 / 1000
Error in lav_options_set(opt) :
lavaan ERROR: estimator ML for ordered data is not supported yet. Use WLSMV instead.
#the same thing with using MCAR
miss.model <- miss(pmMCAR=0.3, m=0)
AUTanalysis.POPCHILDHOOD.CHILDHOOD <-sim(1000, n =546, model=AUTmodel.CHILDHOOD, seed=565, generate=AUTmodelPOP.CHILDHOOD, lavaanfun = "sem", miss.model,
std.lv=T, cilevel=0.90, estimator="MLR")
Progress: 1 / 1000
Error in lav_options_set(opt) :
lavaan ERROR: estimator ML for ordered data is not supported yet. Use WLSMV instead.
Progress: 2 / 1000
Error in lav_options_set(opt) :
lavaan ERROR: estimator ML for ordered data is not supported yet. Use WLSMV instead.