Jak wyodrębnić / obliczyć dźwignię i odległości Cooka dla liniowych modeli efektów mieszanych


10

Czy ktoś wie, jak obliczyć (lub wyodrębnić) dźwignię i odległości Cooka dla merobiektu klasy (uzyskanego przez lme4pakiet)? Chciałbym je nakreślić w celu analizy pozostałości.

Odpowiedzi:


13

Należy przyjrzeć się opakowaniu R influence.ME. Pozwala obliczyć miary wpływowych danych dla wygenerowanych modeli mieszanych efektów lme4.

Przykładowy model:

library(lme4)
model <- lmer(mpg ~ disp + (1 | cyl), mtcars)

Ta funkcja influencejest podstawą wszystkich dalszych kroków:

library(influence.ME)
infl <- influence(model, obs = TRUE)

Oblicz odległość Cooka:

cooks.distance(infl)

Wykres odległości Cooka:

plot(infl, which = "cook")

wprowadź opis zdjęcia tutaj


Dzięki! To z pewnością pomaga. Co powiesz na obliczenie dźwigni dla dystansu Cooka w porównaniu do wykresu dźwigni?
Roey Angel,

@RoeyAngel Przypuszczam, że nie jest to możliwe z influence.MEpakietem. Niestety nie mam rozwiązania tego zadania.
Sven Hohenstein

Nie powinno tak być infl <- influence(model, group = "cyl"), ponieważ jako efekt losowy podałeś (1|cyl)? Nie wiem, wcale tego nie rozumiem, po prostu zainstalowałem wpływy ... ale tak naprawdę nie wiem, kiedy obs = TRUEi kiedy użyć group...
Ciekawe

Chciałbym dodać: Jeśli chcesz uzyskać numer wiersza, w którym występują odległości D Cooka - ten sam numer występujący na wykresie bez kreślenia, możesz użyć następującego wzoru r na liczbach D Cooka z cięciem wartość off np. 0,1cooksD_data<-as.data.frame(cooks.distance(ft1)) cooksD_data_select<-cooksd[cooksD_data>0.1,drop=FALSE,] cooksD_oultiers<-as.numeric(rownames(cooksD_data_select))]
Elias Estatistics

Czy jest to lepsze niż zalecana tutajhatvalues() funkcja ?
Ciekawy
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.