Могу ли я доверять своим результатам cfa, если дисперсионно-ковариационная матрица не представляется положительно определенной?

#r #r-lavaan #sem

#r #р-лаваан #факторный анализ #структурное уравнение-модель

Вопрос:

Я пытаюсь создать модель структурного уравнения, которая проверяет структуру скрытых переменных, лежащих в основе набора данных big 5, найденного на kaggle. Более конкретно, я хотел бы повторить вывод, который предполагает, что общая дисперсия методов (например, отклонения в ответах) раздувает часто наблюдаемые высокие корреляции между манифестными переменными / элементами большой 5 (Chang, Connelly amp; Geeza (2012).).

 big5_CFAmodel_cmv <-'EXTRA =~ EXT1   EXT2   EXT3   EXT4   EXT5   EXT7   EXT8   EXT9   EXT10 
                     AGREE =~ AGR1   AGR2   AGR4   AGR5   AGR6   AGR7   AGR8   AGR9   AGR10 
                     EMO   =~ EST1   EST2   EST3   EST5   EST6   EST7   EST8   EST9   EST10 
                     OPEN  =~ OPN1   OPN2   OPN3   OPN5   OPN6   OPN7   OPN8   OPN9   OPN10 
                     CON   =~ CSN1   CSN2   CSN3   CSN4   CSN5   CSN6   CSN7   CSN8   CSN9  
                     CMV   =~ EXT1   EXT2   EXT3   EXT4   EXT5   EXT7   EXT8   EXT9   EXT10   AGR1   AGR2   AGR4   AGR5   AGR6   AGR7   AGR8   AGR9   AGR10   CSN1   CSN2   CSN3   CSN4   CSN5   CSN6   CSN7   CSN8   CSN9   EST1   EST2   EST3   EST5   EST6   EST7   EST8   EST9   EST10   OPN1   OPN2   OPN3   OPN5   OPN6   OPN7   OPN8   OPN9   OPN10 '

big5_CFA_cmv <- cfa(model = big5_CFAmodel_cmv,
                        data = big5, estimator = "MLR")
 

Вот мой полный код на Github. Теперь я получаю предупреждение от лаваана:

 lavaan WARNING:
    The variance-covariance matrix of the estimated parameters (vcov)
    does not appear to be positive definite! The smallest eigenvalue
    (= -4.921738e-07) is smaller than zero. This may be a symptom that
    the model is not identified.
 

Но когда я бежал summary(big5_CFA_cmv, fit.measures = TRUE, standardized = TRUE, rsquare = TRUE) , лаваан, казалось, заканчивал нормально и показывал хорошую статистику.

 lavaan 0.6-8 ended normally after 77 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of model parameters                       150
                                                      
                                                  Used       Total
  Number of observations                           498         500
                                                                  
Model Test User Model:
                                               Standard      Robust
  Test Statistic                               2459.635    2262.490
  Degrees of freedom                                885         885
  P-value (Chi-square)                            0.000       0.000
  Scaling correction factor                                   1.087
       Yuan-Bentler correction (Mplus variant)                     

Model Test Baseline Model:

  Test statistic                              9934.617    8875.238
  Degrees of freedom                               990         990
  P-value                                        0.000       0.000
  Scaling correction factor                                  1.119

User Model versus Baseline Model:

  Comparative Fit Index (CFI)                    0.824       0.825
  Tucker-Lewis Index (TLI)                       0.803       0.805
                                                                  
  Robust Comparative Fit Index (CFI)                         0.830
  Robust Tucker-Lewis Index (TLI)                            0.810

Loglikelihood and Information Criteria:

  Loglikelihood user model (H0)             -31449.932  -31449.932
  Scaling correction factor                                  1.208
      for the MLR correction                                      
  Loglikelihood unrestricted model (H1)     -30220.114  -30220.114
  Scaling correction factor                                  1.105
      for the MLR correction                                      
                                                                  
  Akaike (AIC)                               63199.863   63199.863
  Bayesian (BIC)                             63831.453   63831.453
  Sample-size adjusted Bayesian (BIC)        63355.347   63355.347

Root Mean Square Error of Approximation:

  RMSEA                                          0.060       0.056
  90 Percent confidence interval - lower         0.057       0.053
  90 Percent confidence interval - upper         0.063       0.059
  P-value RMSEA <= 0.05                          0.000       0.000
                                                                  
  Robust RMSEA                                               0.058
  90 Percent confidence interval - lower                     0.055
  90 Percent confidence interval - upper                     0.061

Standardized Root Mean Square Residual:

  SRMR                                           0.061       0.061

Parameter Estimates:

  Standard errors                             Sandwich
  Information bread                           Observed
  Observed information based on                Hessian

Latent Variables:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  EXTRA =~                                                              
    EXT1              1.000                               0.455    0.372
    EXT2              1.010    0.323    3.129    0.002    0.459    0.358
    EXT3              0.131    0.301    0.434    0.664    0.059    0.049
    EXT4              1.393    0.430    3.240    0.001    0.633    0.532
    EXT5              0.706    0.168    4.188    0.000    0.321    0.263
    EXT7              1.001    0.183    5.477    0.000    0.455    0.323
    EXT8              1.400    0.545    2.570    0.010    0.637    0.513
    EXT9              1.468    0.426    3.446    0.001    0.667    0.505
    EXT10             1.092    0.335    3.258    0.001    0.497    0.387
  AGREE =~                                                              
    AGR1              1.000                               0.616    0.486
    AGR2              0.721    0.166    4.349    0.000    0.444    0.374
    AGR4              1.531    0.205    7.479    0.000    0.944    0.848
    AGR5              0.999    0.141    7.085    0.000    0.615    0.568
    AGR6              1.220    0.189    6.464    0.000    0.752    0.661
    AGR7              0.743    0.155    4.795    0.000    0.458    0.406
    AGR8              0.836    0.126    6.614    0.000    0.515    0.502
    AGR9              1.292    0.209    6.176    0.000    0.796    0.741
    AGR10             0.423    0.124    3.409    0.001    0.261    0.258
  EMO =~                                                                
    EST1              1.000                               0.856    0.669
    EST2              0.674    0.063   10.626    0.000    0.577    0.485
    EST3              0.761    0.059   12.831    0.000    0.651    0.580
    EST5              0.646    0.081    7.970    0.000    0.552    0.444
    EST6              0.936    0.069   13.542    0.000    0.801    0.661
    EST7              1.256    0.128    9.805    0.000    1.075    0.880
    EST8              1.298    0.131    9.888    0.000    1.111    0.883
    EST9              0.856    0.071   11.997    0.000    0.733    0.602
    EST10             0.831    0.085    9.744    0.000    0.711    0.545
  OPEN =~                                                               
    OPN1              1.000                               0.593    0.518
    OPN2              0.853    0.106    8.065    0.000    0.506    0.492
    OPN3              1.064    0.205    5.186    0.000    0.631    0.615
    OPN5              1.012    0.124    8.161    0.000    0.600    0.654
    OPN6              1.039    0.204    5.085    0.000    0.616    0.553
    OPN7              0.721    0.089    8.115    0.000    0.428    0.481
    OPN8              0.981    0.077   12.785    0.000    0.582    0.474
    OPN9              0.550    0.106    5.187    0.000    0.326    0.332
    OPN10             1.269    0.200    6.332    0.000    0.753    0.772
  CON =~                                                                
    CSN1              1.000                               0.779    0.671
    CSN2              1.151    0.128    8.997    0.000    0.897    0.665
    CSN3              0.567    0.068    8.336    0.000    0.442    0.437
    CSN4              1.054    0.107    9.867    0.000    0.821    0.669
    CSN5              0.976    0.083   11.749    0.000    0.760    0.593
    CSN6              1.393    0.133   10.464    0.000    1.085    0.779
    CSN7              0.832    0.082   10.175    0.000    0.648    0.583
    CSN8              0.684    0.077    8.910    0.000    0.532    0.500
    CSN9              0.938    0.075   12.535    0.000    0.730    0.574
  CMV =~                                                                
    EXT1              1.000                               0.815    0.666
    EXT2              1.074    0.091   11.863    0.000    0.875    0.683
    EXT3              1.112    0.159    7.001    0.000    0.907    0.749
    EXT4              0.992    0.090   11.067    0.000    0.809    0.679
    EXT5              1.194    0.108   11.064    0.000    0.974    0.798
    EXT7              1.253    0.069   18.133    0.000    1.021    0.725
    EXT8              0.733    0.109    6.706    0.000    0.597    0.481
    EXT9              0.857    0.105    8.136    0.000    0.698    0.529
    EXT10             1.010    0.088   11.446    0.000    0.824    0.641
    AGR1              0.047    0.142    0.328    0.743    0.038    0.030
    AGR2              0.579    0.173    3.336    0.001    0.472    0.397
    AGR4             -0.144    0.167   -0.859    0.390   -0.117   -0.105
    AGR5              0.154    0.143    1.075    0.282    0.125    0.116
    AGR6             -0.156    0.161   -0.971    0.332   -0.127   -0.112
    AGR7              0.581    0.178    3.270    0.001    0.474    0.421
    AGR8              0.224    0.123    1.820    0.069    0.183    0.178
    AGR9             -0.043    0.145   -0.299    0.765   -0.035   -0.033
    AGR10             0.540    0.137    3.935    0.000    0.440    0.436
    CSN1             -0.109    0.143   -0.761    0.446   -0.089   -0.077
    CSN2             -0.289    0.150   -1.931    0.054   -0.235   -0.175
    CSN3             -0.064    0.114   -0.561    0.575   -0.052   -0.052
    CSN4              0.041    0.166    0.246    0.806    0.033    0.027
    CSN5              0.009    0.132    0.065    0.948    0.007    0.005
    CSN6             -0.307    0.181   -1.694    0.090   -0.251   -0.180
    CSN7             -0.206    0.132   -1.555    0.120   -0.168   -0.151
    CSN8              0.102    0.137    0.741    0.459    0.083    0.078
    CSN9              0.016    0.151    0.107    0.915    0.013    0.010
    EST1             -0.063    0.167   -0.375    0.708   -0.051   -0.040
    EST2              0.136    0.109    1.248    0.212    0.110    0.093
    EST3             -0.103    0.165   -0.625    0.532   -0.084   -0.075
    EST5              0.117    0.125    0.932    0.351    0.095    0.076
    EST6              0.002    0.158    0.010    0.992    0.001    0.001
    EST7             -0.253    0.239   -1.058    0.290   -0.206   -0.169
    EST8             -0.216    0.243   -0.888    0.375   -0.176   -0.140
    EST9              0.159    0.136    1.168    0.243    0.129    0.106
    EST10             0.331    0.135    2.462    0.014    0.270    0.207
    OPN1             -0.025    0.150   -0.169    0.866   -0.021   -0.018
    OPN2              0.042    0.127    0.332    0.740    0.034    0.033
    OPN3             -0.088    0.110   -0.799    0.424   -0.072   -0.070
    OPN5              0.208    0.139    1.499    0.134    0.170    0.185
    OPN6             -0.012    0.116   -0.102    0.919   -0.010   -0.009
    OPN7              0.146    0.126    1.156    0.248    0.119    0.133
    OPN8             -0.140    0.135   -1.036    0.300   -0.114   -0.093
    OPN9             -0.074    0.103   -0.723    0.470   -0.060   -0.062
    OPN10             0.035    0.138    0.250    0.802    0.028    0.029

Covariances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  EXTRA ~~                                                              
    AGREE            -0.096    0.036   -2.692    0.007   -0.342   -0.342
    EMO              -0.089    0.050   -1.782    0.075   -0.228   -0.228
    OPEN             -0.013    0.025   -0.534    0.594   -0.048   -0.048
    CON              -0.060    0.042   -1.440    0.150   -0.170   -0.170
    CMV              -0.063    0.081   -0.783    0.434   -0.171   -0.171
  AGREE ~~                                                              
    EMO              -0.003    0.057   -0.059    0.953   -0.006   -0.006
    OPEN              0.068    0.040    1.712    0.087    0.186    0.186
    CON               0.085    0.047    1.818    0.069    0.177    0.177
    CMV               0.239    0.046    5.185    0.000    0.476    0.476
  EMO ~~                                                                
    OPEN              0.040    0.042    0.957    0.338    0.079    0.079
    CON               0.229    0.050    4.542    0.000    0.343    0.343
    CMV               0.250    0.066    3.810    0.000    0.358    0.358
  OPEN ~~                                                               
    CON               0.058    0.044    1.308    0.191    0.125    0.125
    CMV               0.098    0.069    1.412    0.158    0.202    0.202
  CON ~~                                                                
    CMV               0.185    0.072    2.576    0.010    0.291    0.291

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
   .EXT1              0.754    0.059   12.680    0.000    0.754    0.503
   .EXT2              0.804    0.065   12.443    0.000    0.804    0.489
   .EXT3              0.658    0.084    7.843    0.000    0.658    0.449
   .EXT4              0.537    0.059    9.162    0.000    0.537    0.379
   .EXT5              0.545    0.049   11.184    0.000    0.545    0.366
   .EXT7              0.892    0.080   11.107    0.000    0.892    0.450
   .EXT8              0.907    0.117    7.740    0.000    0.907    0.589
   .EXT9              0.971    0.099    9.763    0.000    0.971    0.556
   .EXT10             0.867    0.081   10.666    0.000    0.867    0.525
   .AGR1              1.207    0.109   11.087    0.000    1.207    0.750
   .AGR2              0.790    0.085    9.293    0.000    0.790    0.561
   .AGR4              0.439    0.079    5.592    0.000    0.439    0.355
   .AGR5              0.708    0.066   10.721    0.000    0.708    0.602
   .AGR6              0.803    0.075   10.670    0.000    0.803    0.621
   .AGR7              0.628    0.056   11.266    0.000    0.628    0.495
   .AGR8              0.664    0.059   11.168    0.000    0.664    0.631
   .AGR9              0.548    0.056    9.726    0.000    0.548    0.474
   .AGR10             0.647    0.059   10.934    0.000    0.647    0.636
   .EST1              0.935    0.080   11.644    0.000    0.935    0.571
   .EST2              1.026    0.077   13.359    0.000    1.026    0.724
   .EST3              0.869    0.070   12.409    0.000    0.869    0.689
   .EST5              1.196    0.075   15.912    0.000    1.196    0.773
   .EST6              0.826    0.067   12.380    0.000    0.826    0.562
   .EST7              0.453    0.059    7.653    0.000    0.453    0.304
   .EST8              0.457    0.065    7.044    0.000    0.457    0.289
   .EST9              0.862    0.067   12.860    0.000    0.862    0.581
   .EST10             0.986    0.074   13.395    0.000    0.986    0.579
   .OPN1              0.964    0.098    9.828    0.000    0.964    0.735
   .OPN2              0.792    0.070   11.309    0.000    0.792    0.750
   .OPN3              0.670    0.085    7.903    0.000    0.670    0.635
   .OPN5              0.413    0.039   10.466    0.000    0.413    0.490
   .OPN6              0.866    0.099    8.780    0.000    0.866    0.696
   .OPN7              0.574    0.048   11.944    0.000    0.574    0.725
   .OPN8              1.181    0.094   12.627    0.000    1.181    0.784
   .OPN9              0.863    0.083   10.424    0.000    0.863    0.894
   .OPN10             0.376    0.051    7.358    0.000    0.376    0.395
   .CSN1              0.774    0.079    9.836    0.000    0.774    0.574
   .CSN2              1.082    0.099   10.961    0.000    1.082    0.595
   .CSN3              0.837    0.072   11.594    0.000    0.837    0.820
   .CSN4              0.817    0.067   12.117    0.000    0.817    0.542
   .CSN5              1.063    0.077   13.728    0.000    1.063    0.646
   .CSN6              0.856    0.089    9.613    0.000    0.856    0.442
   .CSN7              0.850    0.065   13.025    0.000    0.850    0.688
   .CSN8              0.817    0.057   14.298    0.000    0.817    0.721
   .CSN9              1.079    0.077   13.982    0.000    1.079    0.667
    EXTRA             0.207    0.141    1.467    0.142    1.000    1.000
    AGREE             0.380    0.101    3.744    0.000    1.000    1.000
    EMO               0.732    0.104    7.075    0.000    1.000    1.000
    OPEN              0.352    0.098    3.603    0.000    1.000    1.000
    CON               0.606    0.089    6.792    0.000    1.000    1.000
    CMV               0.665    0.203    3.269    0.001    1.000    1.000

R-Square:
                   Estimate
    EXT1              0.497
    EXT2              0.511
    EXT3              0.551
    EXT4              0.621
    EXT5              0.634
    EXT7              0.550
    EXT8              0.411
    EXT9              0.444
    EXT10             0.475
    AGR1              0.250
    AGR2              0.439
    AGR4              0.645
    AGR5              0.398
    AGR6              0.379
    AGR7              0.505
    AGR8              0.369
    AGR9              0.526
    AGR10             0.364
    EST1              0.429
    EST2              0.276
    EST3              0.311
    EST5              0.227
    EST6              0.438
    EST7              0.696
    EST8              0.711
    EST9              0.419
    EST10             0.421
    OPN1              0.265
    OPN2              0.250
    OPN3              0.365
    OPN5              0.510
    OPN6              0.304
    OPN7              0.275
    OPN8              0.216
    OPN9              0.106
    OPN10             0.605
    CSN1              0.426
    CSN2              0.405
    CSN3              0.180
    CSN4              0.458
    CSN5              0.354
    CSN6              0.558
    CSN7              0.312
    CSN8              0.279
    CSN9              0.333
 

Тем не менее, есть некоторые отрицательные факторы, влияющие на общий коэффициент дисперсии метода. Кроме того, экстраверсия, по-видимому, отрицательно коррелирует с cmv.

Что это значит? И могу ли я доверять статистике соответствия или моя модель указана неправильно?

Ответ №1:

Во-первых, позвольте мне прояснить вашу неверную интерпретацию предупреждающего сообщения. Это относится к ковариационной матрице оцененных параметров (т. Е. , vcov(big5_CFA_cmv) , Из которой SE вычисляются как квадратные корни дисперсий по диагонали), а не к самим оценкам. Избыточность оценок может указывать на отсутствие идентификации, которую вы эмпирически проверяете, сохраняя подразумеваемую моделью ковариационную матрицу и подгоняя к ней ту же модель.

 MI_COV <- lavInspect(big5_CFA_cmv, "cov.ov")
summary(cfa(model = big5_CFAmodel_cmv,
            sample.cov = MI_COV,
            sample.nobs = nobs(big5_CFA_cmv))
 

Если ваши оценки меняются, это свидетельствует о том, что ваша модель не идентифицирована. Если оценки остаются неизменными, эмпирическая проверка неубедительна (т. Е. Она все еще может быть не идентифицирована, но оптимизатор только что нашел то же локальное решение, которое казалось достаточно стабильным, чтобы прекратить поиск в пространстве параметров; критерии для вывода сходимости не идеальны).

Что касается спецификации вашей модели, я бы сомневался, что она идентифицирована, потому что вашему коэффициенту CMV (на который загружаются все индикаторы) разрешено коррелировать с факторами признаков (которым также разрешено коррелировать). Это противоречит определению «фактора метода», который представляет собой что-то о том, как были измерены данные, которые не имеют ничего общего с тем, что пытаются измерить. Даже когда признаки ортогональны методам, эмпирическая идентификация становится незначительной, когда признакам и / или методам разрешено коррелировать друг с другом. Multitrait—multimethod (MTMM) печально известны такими проблемами, как и многие бифакторные модели (которые обычно представляют собой одну черту и множество методов, на которые похожа ваша модель, но перевернутая).

Что это значит?

Ваши отрицательные (и большинство положительных) ЦМВ-нагрузки незначительны. Изменение около 0 (в обоих направлениях) согласуется с нулевой гипотезой о том, что они равны нулю. Более примечательным (и связанным с моей проблемой выше) является то, что нагрузки CMV значимы для всех показателей EXT, но только для нескольких других (3 AGR и индикатор EST). Корреляции между ЦМВ и признаками действительно усложняют интерпретацию, как и использование эталонных показателей. Прежде чем вы что-либо интерпретируете, я бы рекомендовал зафиксировать все коэффициентные отклонения на 1, используя std.lv=TRUE и делая CMV ортогональным : EXTRA AGREE EMO OPEN CON ~~ 0*CMV .

Тем не менее, я все еще ожидаю проблем из-за оценки такого количества параметров модели с относительно небольшой выборкой из 500 (498 после удаления по списку). Это далеко не достаточно большая выборка, чтобы ожидать, что 50 * 51/2 = 1275 (co) дисперсии будут надежно оценены.

Комментарии:

1. Вау, спасибо, Терренс, это очень полезно! Исходный набор данных включает более 1 млн наблюдений, которые моя компьютерная память не может обработать, но я, конечно, могу нарисовать большее подмножество: как вы думаете, достаточно ли 10 000 наблюдений?

2. Я думаю, что 10K значительно уменьшили бы ошибку выборки в оценочной ковариационной матрице генеральной совокупности, но, надеюсь, все же были бы выполнимы с вычислительной точки зрения. Поскольку вы оцениваете только 150 параметров модели (в вашей опубликованной модели), возможно, 1500-2000 будет достаточно, если 10K будет слишком медленным.