【发布时间】:2021-01-10 21:33:09
【问题描述】:
我创建了一份问卷。该问卷由四个子量表组成,测量我感兴趣的变量的 4 个不同组成部分。每个分量表由 3 个项目组成。每个项目是一个 6 分制(然后每个项目的响应包含在 1 到 6 之间)。
这是我的数据样本,每一行都是一个主题:
> dput(DF[1:10, 7:18 ])
structure(list(I1 = c(3, 6, 6, 4, 5, 5, 3, 3, 5, 4), I2 = c(3,
5, 5, 6, 4, 5, 2, 5, 5, 4), I3 = c(1, 4, 2, 3, 3, 4, 4, 1, 5,
2), I4 = c(5, 6, 6, 6, 5, 6, 6, 6, 6, 6), I5 = c(5, 6, 5, 5,
6, 6, 5, 6, 5, 5), I6 = c(4, 6, 6, 6, 5, 5, 6, 4, 5, 4), I7 = c(3,
6, 5, 6, 4, 4, 3, 5, 3, 4), I8 = c(4, 6, 5, 5, 4, 4, 3, 5, 3,
5), I9 = c(4, 6, 4, 4, 5, 5, 5, 4, 4, 3), I10 = c(2, 4, 5, 6,
3, 2, 4, 1, 2, 4), I11 = c(3, 3, 4, 6, 4, 6, 5, 5, 2, 3), I12 = c(3,
6, 6, 6, 5, 4, 4, 4, 5, 5)), row.names = c(NA, -10L), class = c("tbl_df", "tbl", "data.frame"))
217 名参与者完成了这份问卷(没有缺失值),我想测试我的数据是否支持我的 CFA 模型。
这是我的代码:
library(lavaan)
model <- "
Factor1 =~ I1 + I2 + I3
Factor2 =~ I4 + I5 + I6
Factor3 =~ I7 + I8 + I9
Factor4 =~ I10 + I11 + I12
"
fit <- cfa(model, data = DF)
summary(fit, fit.measures = TRUE, standardized = TRUE)
但是当我运行它时,我有以下错误,我不明白为什么。 这是错误消息:
lavaan WARNING:优化器警告解决方案尚未完成 找到了!
lavaan WARNING: 优化器警告没有解决方案 找到了!
警告: 无法计算标准误!信息矩阵可以 不能倒置。这可能是模型不适合的症状 已确定。
lavaan 警告:一些估计的 ov 方差为负
lavaan 警告:潜在变量的协方差矩阵
不是肯定的; 使用 lavInspect(fit, "cov.lv") 进行调查。
这是我对 lavInspect 的看法:
> lavInspect(fit, "cov.lv")
Factr1 Factr2 Factr3 Factr4
Factor1 7797.062
Factor2 0.248 0.451
Factor3 0.215 0.182 0.289
Factor4 -0.254 -0.159 0.280 9883.238
知道因素 1 和因素 4 的巨大 cov 可以用 lavaan 显示的 I1 (-7795.413) 和 I10 (-9881.204) 的非常高的方差来解释,但如果我直接向 R 询问 var(DF$I1)和 var(DF$I10),结果很不一样。
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.I1 -7795.413 NA -7795.413 -4729.827
.I2 1.684 NA 1.684 1.000
.I3 1.535 NA 1.535 1.000
.I4 0.807 NA 0.807 0.641
.I6 1.859 NA 1.859 0.884
.I7 1.370 NA 1.370 0.826
.I8 1.201 NA 1.201 0.832
.I9 1.681 NA 1.681 0.950
.I10 -9881.204 NA -9881.204 -4859.350
.I11 2.215 NA 2.215 1.000
.I12 0.784 NA 0.784 1.000
> var(DF$I1)
[1] 1.683052
> var(DF$I10)
[1] 1.966163
有人知道它为什么不工作吗?是不是因为我的模型不够适合我的数据?
提前谢谢你!
【问题讨论】:
-
你用过
lavInspect(fit, "cov.lv")吗?输出是什么?你能显示数据吗? -
谢谢你的回答汤姆,我会把这些数据放在我的帖子里。
-
也许 4 因子结构确实不是数据的基础。你检查了
cor(DF)(实际上你可以向我们提供协方差矩阵而不是原始数据);例如,在样本数据中I11和I12显示负相关。另外,我认为I1和I10具有较大的负值是估计顺序的产物;如果您将另一个项目放在各自因素的首位,我怀疑这些因素在很大程度上是负面的。但是,这个问题可能更适合stats.stackexchange