我想和三个主持人一起做结构方程建模。我的变量是吸引力(X)、自我价值(Y)、年龄(A)、性别(G)和社会地位(S)。数据是纵向的,分两波: t1和t2。为了找出X和Y之间存在哪种关系,这种关系往哪个方向发展,以及这种关系是如何由A、G和S调节的,我想使用一个交叉滞后模型,其中X_t2和Y_t2是结果变量。我用的是R包拉旺。该模型如下所示:
modelCLP <- '
# regressions
X_t2 ~ X_t1 + Y_t1 + A + G + S + Y_t1 * A + Y_t1 * G + Y_t1 * S
Y_t2 ~ Y_t1 + X_t2 + A + G + S + X_t1 * A + X_t1 * G + X_t1 * S
# co-movements
X_t2 ~~ Y_t2
X_t1 ~~ Y_t1
'
fit <- sem(modelCLP, data = datenB)
summary(fit, standardized = TRUE, fit.measures = TRUE)我输出的问题是,对于方程式1中的主持人和等式2中的主持人,我得到了相同的结果。当我对主持人进行三次单独的分析时,我得到了三个不同的结果。当我计算上面的模型时,我得到了这些结果:
lavaan 0.6-10 ended normally after 20 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of equality constraints 4
Used Total
Number of observations 871 2406
Model Test User Model:
Test statistic 14.959
Degrees of freedom 4
P-value (Chi-square) 0.005
Model Test Baseline Model:
Test statistic 1024.222
Degrees of freedom 11
P-value 0.000
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.989
Tucker-Lewis Index (TLI) 0.970
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -1967.499
Loglikelihood unrestricted model (H1) -1960.020
Akaike (AIC) 3952.999
Bayesian (BIC) 3995.926
Sample-size adjusted Bayesian (BIC) 3967.344
Root Mean Square Error of Approximation:
RMSEA 0.056
90 Percent confidence interval - lower 0.028
90 Percent confidence interval - upper 0.088
P-value RMSEA <= 0.05 0.320
Standardized Root Mean Square Residual:
SRMR 0.018
Parameter Estimates:
Standard errors Standard
Information Expected
Information saturated (h1) model Structured
Regressions:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
X_t2 ~
X_t1 0.382 0.018 21.245 0.000 0.382 0.600
Y_t1 0.100 0.034 2.902 0.004 0.100 0.083
A (Y_t1) 0.002 0.002 1.395 0.163 0.002 0.037
G (Y_t1) 0.002 0.002 1.395 0.163 0.002 0.001
S (Y_t1) 0.002 0.002 1.395 0.163 0.002 0.003
Y_t2 ~
Y_t1 0.716 0.034 21.180 0.000 0.716 0.594
X_t1 0.064 0.018 3.617 0.000 0.064 0.100
A (X_t1) 0.004 0.001 2.724 0.006 0.004 0.071
G (X_t1) 0.004 0.001 2.724 0.006 0.004 0.002
S (X_t1) 0.004 0.001 2.724 0.006 0.004 0.006
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.X_t2 ~~
.Y_t2 0.104 0.020 5.287 0.000 0.104 0.182
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.X_t2 0.580 0.028 20.869 0.000 0.580 0.581
.Y_t2 0.560 0.027 20.869 0.000 0.560 0.559我能做些什么才能让三位主持人得到不同的结果?有没有更好的方法来做一个扫描电镜与多个慢化剂在R?
发布于 2022-06-06 17:42:54
我不知道lavaan在您的代码中到底做了什么,但我相信在模型中可能会考虑限制'A‘、'G’和'S‘。
据我所知,在进行几乎(?)所有工具..。有几种方法可以做到这一点。
第一种是计算潜在变量的因子分数,并在R中生成交互项作为因子得分和moderator.
indProd() from semTools package.
modelCLP$A_Y_t1=modelCLP$A*modelCLP$Y_t1
modelCLP$G_Y_t1=modelCLP$G*modelCLP$Y_t1
modelCLP$S_Y_t1=modelCLP$S*modelCLP$Y_t1
modelCLP$A_X_t1=modelCLP$A*modelCLP$Y_t1
modelCLP$G_X_t1=modelCLP$G*modelCLP$X_t1
modelCLP$S_X_t1=modelCLP$S*modelCLP$X_t1 modelCLP <- '
# regressions
X_t2 ~ X_t1 + Y_t1 + A + G + S + A_Y_t1 + G_Y_t1 + S_Y_t1
Y_t2 ~ Y_t1 + X_t2 + A + G + S + A_X_t1 + G_X_t1 + S_X_t1
# co-movements
X_t2 ~~ Y_t2
X_t1 ~~ Y_t1'注意:您可能需要在所有变量之间添加协方差(包括这些交互项)。
fit <- sem(modelCLP, data = datenB)
summary(fit, standardized = TRUE, fit.measures = TRUE)https://stackoverflow.com/questions/72170505
复制相似问题