Modelowanie regresji z nierówną wariancją


22

Chciałbym dopasować model liniowy (lm), w którym wariancja reszt jest wyraźnie zależna od zmiennej objaśniającej.

Wiem, że to robię, używając glm z rodziną Gamma do modelowania wariancji, a następnie umieść odwrotność w wagach funkcji lm (przykład: http://nitro.biosci.arizona.edu/r/chapter31 .pdf )

Zastanawiałem się:

  • Czy to jedyna technika?
  • Jakie inne podejścia są istotne?
  • Jakie pakiety R / funkcje istotne dla tego typu modelowania? (inne niż glm, lm)

4
Gdzie oni używają, glm()a następnie lm()w rozdziale, do którego prowadzi link. Wydaje mi się, że glm()to wszystko, co jest tam wymagane i użyte, ale mogłem coś przeoczyć. Możesz wypróbować uogólnione najmniejsze kwadraty ( gls()w nlme ), które pozwalają oszacować wagi w celu kontroli rodzaju heteroscedastyczności, o której wspominasz; zobacz ?varFunci postępuj zgodnie z linkami stamtąd. IIRC varFixed()zrobi, co chcesz.
Przywróć Monikę - G. Simpson

W „proc mix” „podmiot = opcja” tworzy blokowo-diagonalną strukturę w macierzy wariancji-kowariancji reszt. Czy rozważałeś zatem ogólny liniowy model mieszany w celu zmiany hipotezy homoscedastyczności?
ocram

Dzięki Gavin, spojrzałem trochę na te funkcje. Dwa pytania: 1) Czy polecasz jakieś samouczki? (Podejrzewam, że książka MASS może być dobrym początkiem, ale zastanawiałam się, czy pomyślałeś o tym). 2) Ponieważ model, który dopasowuję, jest prostym OLS, jak różne będą szacunki podczas korzystania z funkcji gls? (Jeśli dobrze pamiętam - nie wiele, ponieważ powinno to działać nad pewnym iteracyjnym przybliżeniem pierwszego stopnia, ale nie jestem wcale tego pewien). Ocram - dziękuję, ale nie używam SAS.
Tal Galili,

W sekcji 2 wyjaśniono, jak to zrobić w STATA dla regresji quasipoisson : stata.com/meeting/fnasug08/gutierrez.pdf . Byłbym bardzo wdzięczny, gdyby ktoś mógł zasugerować sposób przekodowania tego w języku R.
a11msp

Odpowiedzi:


17

Pigułki przeciw „efektowi megafonowemu” obejmują (między innymi):

  1. Użyj transformacji log lub pierwiastka kwadratowego Y
  2. Użyj ważonej regresji metodą najmniejszych kwadratów . W tym podejściu każda obserwacja ma swój własny współczynnik wariancji. Ta odpowiedź pokazuje, jak używać WLSR w R (na przykład, jeśli wariancja reszt jest proporcjonalna do średnich, możesz podać jako ciężar odwrotność dopasowanej wartości w modelu nieważonym).
  3. Użyj solidnej regresji. Funkcja rlm()w MASSpakiecie R wykonuje oszacowanie M, które powinno być odporne na nierówności wariancji.

Edycja z lipca 2017 r .: Wydaje się, że uogólniona metoda najmniejszych kwadratów, zgodnie z sugestią Grega Snowa, jest jedną z najlepszych opcji.


2
Oparłem się na tej odpowiedzi na pytanie przepełnienia stosu .
Peter Ellis

1
Warto też zwrócić uwagę na uogólnioną opcję najmniejszych kwadratów, używając gls z opcją wag ustawioną na varFixed () - dla mnie wydaje się to jedną z bardziej eleganckich opcji ...
Tom Wenseleers

@TomWenseleers Zgadzam się. Zauważ, że to odpowiedź Grega Snowa.
gui11aume

9

Za pomocą pakietu gamlss możesz modelować rozkład błędów odpowiedzi jako liniową, nieliniową lub płynną funkcję zmiennych objaśniających. Wydaje się, że jest to dość potężne podejście ( wiele się nauczyłem o wszystkich możliwościach, które mogą pojawić się podczas procesu wyboru modelu) i wszystko to jest ładnie wyjaśnione w kilku publikacjach (w tym książkach), do których odwołuje się powyższy link.


8

glsFunkcji w nlmepakiecie dla R można oszacować regresji i związek z odchylenia w tym samym czasie. Zobacz weightsargument i drugi przykład na stronie pomocy.

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.