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)
glm()
a następnielm()
w rozdziale, do którego prowadzi link. Wydaje mi się, żeglm()
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?varFunc
i postępuj zgodnie z linkami stamtąd. IIRCvarFixed()
zrobi, co chcesz.Odpowiedzi:
Pigułki przeciw „efektowi megafonowemu” obejmują (między innymi):
rlm()
wMASS
pakiecie 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.
źródło
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.
źródło
gls
Funkcji wnlme
pakiecie dla R można oszacować regresji i związek z odchylenia w tym samym czasie. Zobaczweights
argument i drugi przykład na stronie pomocy.źródło