Podane trzy zmienne, y
i x
, które są pozytywne i ciągły z
, co jest kategoryczny, mam dwa modele kandydujące dana przez:
fit.me <- lmer( y ~ 1 + x + ( 1 + x | factor(z) ) )
i
fit.fe <- lm( y ~ 1 + x )
Mam nadzieję porównać te modele, aby ustalić, który model jest bardziej odpowiedni. Wydaje mi się, że w pewnym sensie fit.fe
jest zagnieżdżone fit.me
. Zazwyczaj, gdy utrzymuje się ten ogólny scenariusz, można wykonać test chi-kwadrat. W R
możemy wykonać ten test za pomocą następującego polecenia,
anova(fit.fe,fit.me)
Gdy oba modele zawierają efekty losowe (generowane przez lmer
z lme4
pakietu), anova()
polecenie działa poprawnie. Ze względu na parametry brzegowe zwykle zaleca się przetestowanie uzyskanej statystyki Chi-Square za pomocą symulacji, niemniej jednak nadal możemy korzystać ze statystyki w procedurze symulacji.
Gdy oba modele zawierają tylko efekty stałe, to podejście --- i powiązane anova()
polecenie --- działają dobrze.
Jednak gdy jeden model zawiera efekty losowe, a model zredukowany zawiera tylko efekty stałe, tak jak w powyższym scenariuszu, anova()
polecenie nie działa.
Mówiąc dokładniej, pojawia się następujący błąd:
> anova(fit.fe, fit.me)
Error: $ operator not defined for this S4 class
Czy jest coś złego w podejściu Chi-Square z góry (z symulacją)? Czy jest to po prostu problem polegający na tym, że anova()
nie umiemy radzić sobie z modelami liniowymi generowanymi przez różne funkcje?
Innymi słowy, czy właściwe byłoby ręczne wygenerowanie statystyki Chi-Square uzyskanej z modeli? Jeśli tak, jakie są odpowiednie stopnie swobody przy porównywaniu tych modeli? Według mojej oceny:
Szacujemy dwa parametry w modelu efektów stałych (nachylenie i przecięcie) i dwa kolejne parametry (parametry wariancji dla losowego nachylenia i losowego przechwytywania) w modelu efektów mieszanych. Zazwyczaj parametr przecięcia nie jest liczona w obliczeniach stopni swobody, tak, że oznacza, że , a ; powiedziawszy, że nie jestem pewien, czy parametry wariancji parametrów efektów losowych należy uwzględnić w obliczeniach stopni swobody; szacunki wariancji dla parametrów o stałym efekcie nie są brane pod uwagę , ale uważam, że dzieje się tak, ponieważ zakłada się, że oszacowania parametrów dla stałych efektów są nieznane, podczas gdy są one uważane za niepoznawalne zmienne losowedla mieszanych efektów. Byłbym wdzięczny za pomoc w tej sprawie.
Wreszcie, czy ktoś ma bardziej odpowiednie ( R
oparte) rozwiązanie do porównywania tych modeli?
źródło
lm()
sięgls()
znlme
opakowania ilmer()
zlme()
(znowu odnlme
pakietu), wszystko będzie działać dobrze. Pamiętaj jednak, że otrzymasz test zachowawczy (zbyt duże wartości p ), ponieważ parametry prostszego modelu znajdują się na granicy przestrzeni parametrów. I tak naprawdę wybór, czy uwzględnić efekty losowe, powinien opierać się na teorii (np. Planie próbkowania), a nie na teście statystycznym.Odpowiedzi:
Technicznie możesz to uruchomić, zmieniając kolejność parametrów:
Będzie działać dobrze. Jeśli miniesz obiekt wygenerowany przez
lmer
pierwszy,anova.merMod
zostanie wywołany zamiastanova.lm
(co nie wie, jak obsługiwaćlmer
obiekty). Widzieć:Chociaż wybór modelu mieszanego lub modelu stałego jest wyborem modelowania, który musi uwzględniać projekt eksperymentalny, a nie problem wyboru modelu. Zobacz @ BenBolkera https://bbolker.github.io/mixedmodels-misc/glmmFAQ.html#testing-signiance-of-landom-effects po więcej szczegółów:
źródło