r - 为什么我不能在 R 上使用 lavaan 进行 3 变量 CFA?

标签 r r-lavaan factor-analysis structural-equation-model

当我有 4 个或更多变量时,一切正常。但我认为 CFA 或 EFA 的最低要求是 3 个变量。当我运行代码时,它为所有估计其是否合适的参数提供 0。

为此,我将使用 USArrests 数据库。

library(lavaan)

d<- USArrests

abc <- 'abc =~  Murder + Assault + Rape'

fit <- lavaan::cfa(abc, data=d, missing = "FIML", estimator = "MLR")

summary(fit, fit.measures=TRUE)

这就是我遇到问题的地方。如果我向 abc 模型添加另一个变量(例如 UrbanPop),则一切正常,我将能够获取 CFI、RMSEA 等。但有时我没有第四个,但仍然想看看它们是否合适。

4 个变量的结果

Model Test User Model:
                                               Standard      Robust
  Comparative Fit Index (CFI)                    0.910       0.923
  RMSEA                                          0.281       0.221
  SRMR                                           0.073       0.073

每次我使用 3 个变量时,无论数据帧如何,我都会得到:

Model Test Baseline Model:

  Comparative Fit Index (CFI)                    1.000       1.000
  RMSEA                                          0.000       0.000
  SRMR                                           0.000       0.000

谢谢!

最佳答案

I thought the minimum for a CFA or EFA was 3 variables. When I run the code, it gives me 0's for all the parameters that estimate if it's a good fit

当没有错误关联时,具有 3 个指标的 1 因素 CFA 被刚刚识别 (df = 0)。如果df = 0,则您的模型不会为数据提供伪造模型的机会。因此,拟合统计量为 0,因为在刚刚识别的模型中拟合是(任意)完美的。介绍性 SEM/CFA 教科书更详细地讨论了识别和拟合,例如,

布朗,T.A.(2015)。 应用研究的验证性因素分析。吉尔福德。

关于r - 为什么我不能在 R 上使用 lavaan 进行 3 变量 CFA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74131238/

相关文章:

r - R 中的 Lavaan 值非常小

'FactoMineR'包中的轮换

r - 使用facana函数时获取因子分析分数

r - NLME对象的提取范围

performance - 从包含键值对的字符串高效地创建数据框

r - 在R中打印平方米

r - “split”不是从 'namespace:data.table' 导出的对象

r - 警告 : the optimizer warns that a solution has NOT been found