1

我想用包sem()中的函数计算一个结构方程模型。Rlavaan

有两个分类变量,一个是潜在的外生变量,一个是潜在的内生变量,我想包含在模型的最终版本中。

但是,当我在模型中包含一个类别变量时,R会产生以下警告:

1:在estimateVCOV(lavaanModel,samplestats = lavaanSampleStats,options = lavaanOptions,:lavaan 警告:无法计算标准错误!

2:在computeTestStatistic(lavaanModel,partable = lavaanParTable,:lavaan警告:无法计算缩放测试统计

使用的代码:

model1 <- '

Wertschaetzung_Essen =~ abwechslungsreiche_M + schnell_zubereitbar + koche_sehr_gerne + koche_sehr_haeufig

Fleischverzicht =~ Ern_Index1

Fleischverzicht ~ Wertschaetzung_Essen
'

fit_model1 <- sem(model1, data=survey2_subset, ordered = c("Ern_Index1"))

注意:这只是最终模型的一个小版本,我只介绍了一个分类变量。但是,对于更复杂的模型版本,警告是相同的。

输出

 str(survey2_subset):


   'data.frame':    3676 obs. of  116 variables:
 $ abwechslungsreiche_M : num  4 2 3 4 3 3 4 3 3 3 ...
 $ schnell_zubereitbar  : num  0 3 2 0 0 1 3 2 1 1 ...
 $ koche_sehr_gerne     : num  1 3 3 1 3 1 4 4 4 3 ...
 $ koche_sehr_haeufig   : num  2 2 3 NA 3 2 2 4 3 3 ...
 $ Ern_Index1           : num  1 1 1 1 0 0 1 0 1 0 ...


 summary(fit_model1, fit.measures = TRUE, standardized=TRUE)

    lavaan (0.5-15) converged normally after  31 iterations

                                                  Used       Total
  Number of observations                          3469        3676

  Estimator                                       DWLS      Robust
  Minimum Function Test Statistic               13.716          NA
  Degrees of freedom                                 4           4
  P-value (Chi-square)                           0.008          NA
  Scaling correction factor                                     NA
  Shift parameter                                     
    for simple second-order correction (Mplus variant)

        Model test baseline model:

  Minimum Function Test Statistic             2176.159    1582.139
  Degrees of freedom                                10          10
  P-value                                        0.000       0.000

       User model versus baseline model:

  Comparative Fit Index (CFI)                    0.996          NA
  Tucker-Lewis Index (TLI)                       0.989          NA

      Root Mean Square Error of Approximation:

  RMSEA                                          0.026          NA
  90 Percent Confidence Interval          0.012  0.042          NA     NA
  P-value RMSEA <= 0.05                          0.994          NA

   Parameter estimates:

  Information                                 Expected
  Standard Errors                           Robust.sem

          Estimate  Std.err  Z-value  P(>|z|)   Std.lv  Std.all
  Latent variables:
  Wertschaetzung_Essen =~
    abwchslngsr_M     1.000                               0.363    0.436
    schnll_zbrtbr     1.179                               0.428    0.438
    koche_shr_grn     2.549                               0.925    0.846
    koche_shr_hfg     2.530                               0.918    0.775
  Fleischverzicht =~
    Ern_Index1        1.000                               0.249    0.249

Regressions:
  Fleischverzicht ~
    Wrtschtzng_Es     0.302                               0.440    0.440

Intercepts:
    abwchslngsr_M     3.133                               3.133    3.760
    schnll_zbrtbr     1.701                               1.701    1.741
    koche_shr_grn     2.978                               2.978    2.725
    koche_shr_hfg     2.543                               2.543    2.148
    Wrtschtzng_Es     0.000                               0.000    0.000
    Fleischvrzcht     0.000                               0.000    0.000

Thresholds:
    Ern_Index1|t1     0.197                               0.197    0.197

Variances:
    abwchslngsr_M     0.562                               0.562    0.810
    schnll_zbrtbr     0.771                               0.771    0.808
    koche_shr_grn     0.339                               0.339    0.284
    koche_shr_hfg     0.559                               0.559    0.399
    Ern_Index1        0.938                               0.938    0.938
    Wrtschtzng_Es     0.132                               1.000    1.000
    Fleischvrzcht     0.050                               0.806    0.806

型号不识别?应该有足够的自由度,并且第一个清单项目的加载设置为一个。

我该如何解决这个问题?

4

1 回答 1

0

我的第一个想法是:

数据框中不能有缺失值,因为使用分类变量 WLSMV 并且 FIML (missing="ML") 仅可用于 ML 估计。也许那是个问题。

另外:是否lavaan自动将“Fleischverzicht”的残差方差固定为 0(或其他值)?我认为,如果没有它,就无法识别单项潜在变量。

于 2014-04-11T13:19:37.867 回答