@NickCox wykonał dobrą robotę, mówiąc o wyświetlaniu pozostałości, gdy masz dwie grupy. Pozwól mi odnieść się do niektórych wyraźnych pytań i domyślnych założeń leżących u podstaw tego wątku.
Pytanie brzmi: „w jaki sposób testujesz założenia regresji liniowej, takie jak homoscedastyczność, gdy zmienna niezależna jest binarna?” Masz model regresji wielokrotnej . Model (wielokrotnej) regresji zakłada, że istnieje tylko jeden warunek błędu, który jest stały wszędzie. Sprawdzanie heteroscedastyczności dla każdego predyktora z osobna nie jest strasznie znaczące (i nie musisz). Właśnie dlatego, gdy mamy model regresji wielokrotnej, diagnozujemy heteroscedastyczność na podstawie wykresów reszt w stosunku do przewidywanych wartości. Prawdopodobnie najbardziej pomocnym wykresem do tego celu jest wykres położenia w skali (zwany również „poziomem rozpiętości”), który jest wykresem pierwiastka kwadratowego z bezwzględnej wartości reszt w porównaniu z przewidywanymi wartościami. Aby zobaczyć przykłady,Co oznacza „stała wariancja” w modelu regresji liniowej?
Podobnie, nie trzeba sprawdzać reszt dla każdego predyktora pod kątem normalności. (Szczerze mówiąc, nawet nie wiem, jak by to działało.)
To, co możesz zrobić z wykresami reszt względem poszczególnych predyktorów, to sprawdzić, czy forma funkcjonalna jest odpowiednio określona. Na przykład, jeśli reszty tworzą parabolę, w danych brakuje pewnej krzywizny. Aby zobaczyć przykład, spójrz na drugi wykres w odpowiedzi @ Glen_b tutaj: Sprawdzanie jakości modelu w regresji liniowej . Te problemy nie dotyczą jednak predyktora binarnego.
O ile warto, jeśli masz tylko predyktory jakościowe, możesz przetestować heteroscedastyczność. Po prostu używasz testu Levene'a. Omawiam to tutaj: dlaczego test Levene'a na równość wariancji zamiast stosunku F? W R używasz ? LeveneTest z pakietu samochodowego.
Edycja: Aby lepiej zilustrować punkt, w którym oglądanie wykresu reszt w porównaniu z pojedynczą zmienną predykcyjną nie pomaga, gdy masz model regresji wielokrotnej, rozważ ten przykład:
set.seed(8603) # this makes the example exactly reproducible
x1 = sort(runif(48, min=0, max=50)) # here is the (continuous) x1 variable
x2 = rep(c(1,0,0,1), each=12) # here is the (dichotomous) x2 variable
y = 5 + 1*x1 + 2*x2 + rnorm(48) # the true data generating process, there is
# no heteroscedasticity
mod = lm(y~x1+x2) # this fits the model
Z procesu generowania danych widać, że nie ma heteroscedastyczności. Przeanalizujmy odpowiednie wykresy modelu, aby sprawdzić, czy sugerują problematyczną heteroscedastyczność:
Nie, nie ma się czym martwić. Przyjrzyjmy się jednak wykresowi reszt w stosunku do pojedynczej zmiennej predykcyjnej binarnej, aby zobaczyć, czy wygląda na to, że istnieje tam heteroscedastyczność:
Och, wygląda na to, że może być problem. Wiemy z procesu generowania danych, że nie ma heteroscedastyczności, a podstawowe wykresy do zbadania tego również nie wykazały, więc co się tutaj dzieje? Może te działki pomogą:
x1
i x2
nie są od siebie niezależni. Co więcej, obserwacje x2 = 1
są skrajne. Mają większą dźwignię, więc ich pozostałości są naturalnie mniejsze. Niemniej jednak nie ma heteroscedastyczności.
Komunikat „zabierz do domu”: najlepszym rozwiązaniem jest zdiagnozowanie heteroscedastyczności tylko na podstawie odpowiednich wykresów (reszty vs. wykres dopasowany i wykres rozłożony).