Jestem nowy w publikowaniu postów SEM + na tym forum; daj mi znać, jeśli w jakikolwiek sposób nie mam jasności, a postaram się to wyjaśnić.
Informacje ogólne
Pracuję na przypisaniu SEM w celu oszacowania dopasowania modelu, z 6 wskaźnikami ładującymi się do zmiennej latentnej. Używam następujących pakietów do przydziału:
require (lavaan)
require (semPlot)
Mój zbiór danych jest ładowany do ramki danych o nazwie my.df
Model, który określam, wygląda następująco - ten model automatycznie naprawia pierwsze ładowanie czynnikowe GeneralMotivation
to x1
do wartości 1.0:
my.model1 <- 'GeneralMotivation = ~ x1 + x2 + x3 + x4 + x5 + x6 '
Wiem, że nie ma takiej potrzeby, ale w celu lepszego zrozumienia działania SEM określiłem również następujący model, zwalniając pierwszy wskaźnik.
problematicmy.model1 <- 'GeneralMotivation = ~ NA * x1 + x2 + x3 + x4 + x5 + x6'
Problem
Następnie uruchomiłem sem
na dwóch modelach, jak pokazano poniżej:
my.fit1 <- sem (my.model1, data = my .df) problematicmy.fit1 <- sem (problematicmy.model1, data = my.df)
Wh pl Określam model używając domyślnych parametrów w lavaan
w my.model1
, gdzie pierwszy wskaźnik modelu jest ustawiony na 1.0, nie było żadnych problemów. Problem pojawia się w problematicmy.model1
, gdzie widzę następujący błąd:
Komunikat ostrzegawczy: In lav_model_vcov (lavmodel = lavmodel, lavsamplestats = lavsamplestats,: lavaan OSTRZEŻENIE: nie można obliczyć standardowych błędów! lavaan UWAGA: może to oznaczać, że model nie został zidentyfikowany.
Dołączyłem również dane wyjściowe dla modelu naruszającego:
lavaan (0,5-17) zbiegał się normalnie po 14 iteracjach Liczba obserwacji 400 Estymator ML Minimalna statystyka testu funkcji 112.214 Stopnie swobody 8 Wartość p (Chi-kwadrat) 0,000 Modelowy model wyjściowy: Minimalna statystyka testu funkcji 360.443 Stopnie swobody 15 Wartość p 0,000 Model użytkownika w porównaniu z modelem bazowym: Porównawczy wskaźnik dopasowania (CFI) 0,698 Indeks Tuckera-Lewisa (TLI) 0,434 Loglikelihood and Information Criteria: Loglikelihood model użytkownika (H0) -3181,787 Loglikelihood nieograniczony model (H1) -3125,680 Liczba wolnych parametrów 13 Akaike (AIC) 6389,574 Bayesian (BIC) 6441,463 Bayesian skorygowany o wielkość próby (BIC) 6400,213 Podstawowy średni kwadratowy błąd przybliżenia: RMSEA 0,180 90-procentowy przedział ufności 0,152 0,211 Wartość p RMSEA < = 0,05 0,000 Standaryzowana średnia pierwiastkowa reszta kwadratowa: SRMR 0,111 Szacunki parametrów: Informacje Oczekiwane błędy standardowe Oszacowanie standardowe Std.err Wartość Z P (> | z |) Std.lv Std.all zmienne: Ogólne Motywacja = ~ x1 0,826 0,765 0,672 x2 0,571 0,528 0,534 x3 0,829 0,767 0,694 x4 0,191 0,176 0,215 x5 0,301 0,278 0,308 x6 0,295 0,273 0,322 Odchylenia: x1 0,709 0,709 0,548 x2 0,701 0,701 0,715 x3 0,632 0,632 0,518 x4 0,640 0,640 0,954 x5 0,740 0,740 0,905 x6 0,643 0,643 0,896 GeneralMotvtn 0,856 1.000 1.000
Załączam również poniższy model graficzny dla problemu . myfit1
:
Kroki podjęte w celu zrozumienia błędu
Najpierw pomyślałem „dobrze, może model jest niedostatecznie zidentyfikowany ”i obliczył posiadane informacje + liczbę parametrów do oszacowania.
Popraw mnie, jeśli się mylę: Powinno być 21 sztuk informacji (6 zmiennych, więc [(6) (7)] / 2 = 21).
Jednak Nie mogę, dla p <.05 miłość do wszystkich statystyk, silny> rozumiem dlaczego model jest niedostatecznie zidentyfikowany, jeśli po prostu uwalniam pierwszy wskaźnik x1
. Z tego, co rozumiem, szacuję tylko 13 parametrów (6 reszt dla obserwowanych zmiennych x1
do x6
, 6 ładowań czynnikowych i wariancja ukryta zmienna GeneralMotivation
). Czy w tym przypadku nie powinienem nadmiernie zidentyfikować mojego modelu?
Domyślam się, że
- Chociaż model graficzny tego nie mówi, w rzeczywistości szacuję kowariancje między resztą wskaźników (tj.
x1 ~~ x2
,x1 ~~ x6
itp.). Jeślix1
jest ustalony na 1,0, w rzeczywistości próbuję oszacować 21 parametrów (5 reszt odx2
dox6
, 10 pozostałych kowariancji zx2
dox6
, 5 pozostałych odchyleń odx2
dox6
, ładowanie 5-czynnikowe zGeneralMotivation
dox2
-x6
i jedną odmianęGeneralMotivation
), dzięki czemu model został właśnie zidentyfikowany (df = 0). Zwalniającx1
, muszę oszacować dodatkowe 7 parametrów (reszta zx1
, pozostałe kowariancjex1 ~~ x2
dox1 ~~ x6
i ładowanie czynnika zGeneralMotivation
dox1
), co powoduje niedostatecznie zidentyfikowany model - Problem nie jest niedostatecznie zidentyfikowany , ale coś zupełnie innego
- SEM i RStudio mnie nienawidzi - mało prawdopodobne, ale nie wykluczam tego.
Zamknięcie
Czy ktoś może mi pomóc zrozumieć, dlaczego pojawia się błąd z lavaan
? Daj mi znać, jeśli potrzebujesz ode mnie więcej informacji.
Dziękuję!