Dlaczego Anova () i drop1 () podają różne odpowiedzi dla GLMM?

10

Mam GLMM w postaci:

lmer(present? ~ factor1 + factor2 + continuous + factor1*continuous + 
                (1 | factor3), family=binomial)

Kiedy używam drop1(model, test="Chi"), otrzymuję inne wyniki niż w przypadku korzystania Anova(model, type="III")z pakietu samochodowego lub summary(model). Te dwa ostatnie dają te same odpowiedzi.

Korzystając z wielu sfabrykowanych danych, odkryłem, że te dwie metody zwykle się nie różnią. Dają tę samą odpowiedź dla zrównoważonych modeli liniowych, niezrównoważonych modeli liniowych (gdzie nierówne n w różnych grupach) oraz dla zrównoważonych uogólnionych modeli liniowych, ale nie dla zrównoważonych uogólnionych liniowych modeli mieszanych. Wygląda więc na to, że tylko w przypadkach, w których uwzględniono czynniki losowe, ta niezgodność się objawia.

  • Dlaczego istnieje rozbieżność między tymi dwiema metodami?
  • Podczas korzystania GLMM powinien Anova()albo drop1()być wykorzystane?
  • Różnica między tymi dwoma jest raczej niewielka, przynajmniej dla moich danych. Czy to w ogóle ma znaczenie, który jest używany?
tim.farkas
źródło

Odpowiedzi:

7

Myślę, że jest to różnica, które testy są obliczane. car::Anovaużywa testów Walda, podczas drop1gdy model zastępuje pojedyncze terminy. John Fox napisał mi kiedyś, że testy Walda i testy modeli poprawionych przy użyciu testów współczynnika prawdopodobieństwa (tj. Strategii z drop1) zgadzają się na modele liniowe, ale niekoniecznie nieliniowe. Niestety, ta poczta była poza listą i nie zawierała żadnych odniesień. Wiem jednak, że jego książka zawiera rozdział poświęcony testom Walda, który może zawierać pożądane informacje.

Pomoc car::Anovamówi:

Testy typu II są obliczane zgodnie z zasadą marginalności, testując każdy termin po wszystkich innych, z wyjątkiem ignorowania krewnych wyższego rzędu; tak zwane testy typu III naruszają marginesowość, testując każdy termin w modelu po wszystkich pozostałych. Ta definicja testów typu II odpowiada testom opracowanym przez SAS dla modeli analizy wariancji, w których wszystkie predyktory są czynnikami, ale nie bardziej ogólnie (tj. Gdy istnieją predyktory ilościowe). Bądź bardzo ostrożny w formułowaniu modelu dla testów typu III, w przeciwnym razie testowane hipotezy nie będą miały sensu.

Niestety nie mogę odpowiedzieć na drugie lub trzecie pytanie, ponieważ chciałbym o tym wiedzieć.


Zaktualizuj komentarz dotyczący ponownego gromadzenia :

Nie ma testów Wald, LR i F dla uogólnionych modeli mieszanych. Anovapo prostu pozwala "chisq"i "F"testuje modele mieszane (tj. "mer"obiekty zwracane przez lmer). Sekcja użytkowania mówi:

## S3 method for class 'mer'
Anova(mod, type=c("II","III", 2, 3), 
    test.statistic=c("chisq", "F"), vcov.=vcov(mod), singular.ok, ...)

Ponieważ jednak testy F dla merobiektów są obliczane przez pbkrtest, co według mojej wiedzy działa tylko dla liniowych modeli mieszanych, Anovadla GLMM powinny zawsze powracać chisq(stąd nie widać różnicy).

Aktualizacja dotycząca pytania:

Moja poprzednia odpowiedź próbowała odpowiedzieć na twoje główne pytanie, różnicę między Anova()i drop1(). Ale teraz rozumiem, że chcesz sprawdzić, czy pewne ustalone efekty są znaczące, czy nie. R-sig-mieszany modelowanie FAQ mówi co następuje w odniesieniu do tego:

Testy pojedynczych parametrów

Od najgorszego do najlepszego:

  • Wald Z-testy
  • Dla zrównoważonych, zagnieżdżonych LMM, w których można obliczyć df: testy t-Wald
  • Test współczynnika wiarygodności, albo przez skonfigurowanie modelu, aby parametr mógł być izolowany / upuszczany (przez anova lub drop1), lub poprzez obliczanie profili prawdopodobieństwa
  • MCMC lub parametryczne przedziały ufności bootstrapu

Testy efektów (tj. Sprawdzenie, czy kilka parametrów jest równych zero)

Od najgorszego do najlepszego:

  • Testy chi-kwadrat Walda (np. Samochód :: Anova)
  • Test wskaźnika wiarygodności (przez anova lub drop1)
  • Dla zrównoważonych, zagnieżdżonych LMM, w których można obliczyć df: warunkowe testy F.
  • Dla LMM: warunkowe testy F z korekcją df (np. Kenward-Roger w pakiecie pbkrtest)
  • MCMC lub porównania parametryczne lub nieparametryczne, bootstrap (nieparametryczne bootstrapowanie musi być ostrożnie zaimplementowane, aby uwzględnić czynniki grupujące)

(podkreślenie dodane)

Wskazuje to, że podejście do korzystania car::Anova()z GLMM nie jest ogólnie zalecane, ale należy zastosować podejście wykorzystujące MCMC lub bootstrap. Nie wiem, czy pvals.fncz languageRpakietu działa z GLMM, ale warto spróbować.

Henrik
źródło
1
Dzięki, Henrik. Anova () może obliczyć trzy różne testy: Wald, LR i F. Próbowałem wszystkich trzech, ale to nie robi różnicy, co wydaje mi się dziwne. Mam wrażenie, że funkcja będzie odmówić używać testów, które zdecyduje nie są odpowiednie dla danych ...
tim.farkas