Modelagem de regressão com variação desigual

22

Eu gostaria de ajustar um modelo linear (lm) onde a variação dos resíduos é claramente dependente da variável explicativa.

A maneira como sei fazer isso é usando glm com a família Gamma para modelar a variação e, em seguida, coloque seu inverso nos pesos na função lm (exemplo: http://nitro.biosci.arizona.edu/r/chapter31 .pdf )

Eu estava me perguntando:

  • Essa é a única técnica?
  • Que outras abordagens são relevantes?
  • Quais pacotes / funções R são relevantes para esse tipo de modelagem? (exceto glm, lm)
Tal Galili
fonte
4
Onde eles usam glm()então lm()no capítulo ao qual você vincula. Parece-me que glm()é tudo o que é necessário e usado lá, mas posso ter perdido alguma coisa. Você pode tentar os mínimos quadrados generalizados ( gls()em nlme ), que permitem estimar pesos para controlar o tipo de heterocedasticidade mencionado; veja ?varFunce siga os links de lá. O IIRC varFixed()fará o que você quiser.
Reintegrar Monica - G. Simpson
Em 'proc mixed', 'subject = option' produz uma estrutura diagonal em bloco na matriz de variância-covariância dos resíduos. Você já considerou um modelo misto linear geral para alterar a hipótese da homoscedasticidade?
Ocram
Obrigado Gavin, eu olhei um pouco para essas funções. Duas perguntas: 1) Você recomenda algum tutorial? (Eu suspeito que o livro do MASS seja um bom começo, mas fiquei pensando se você pensou nisso). 2) Como o modelo que estou ajustando é um OLS simples, qual será a diferença entre a estimativa ao usar a função gls? (Se me lembro corretamente - não muito, pois ele deve estar trabalhando em alguma aproximação iterativa de primeiro grau, mas não tenho certeza disso). Ocram - obrigado, mas eu não uso SAS.
22412 Tal Talili
Aqui na Seção 2, é explicado como fazer isso no STATA para a regressão de quasipoisson : stata.com/meeting/fnasug08/gutierrez.pdf . Se alguém pudesse sugerir uma maneira de recodificar isso em R, ficaria muito grato.
A11msp

Respostas:

17

Comprimidos contra o "efeito megafone" incluem (entre outros):

  1. Y
  2. Use regressão ponderada pelo quadrado mínimo . Nesta abordagem, cada observação recebe seu próprio fator de variação. Esta resposta mostra como usar o WLSR em R (por exemplo, se a variação dos resíduos for proporcional à média, você pode fornecer como pesos o inverso do valor ajustado no modelo não ponderado).
  3. Use regressão robusta. A função rlm()no MASSpacote de R faz a estimativa M, que deve ser robusta à desigualdade de variâncias.

Edição de julho de 2017: Parece que os mínimos quadrados generalizados, conforme sugerido na resposta de Greg Snow, são uma das melhores opções.

gui11aume
fonte
2
Eu construí essa resposta para uma pergunta de estouro de pilha .
Peter Ellis
1
Poderia ser importante ressaltar a opção dos mínimos quadrados generalizados, bem como, usando gls com o conjunto de opção pesos para varFixed () - Para mim, isso parece como uma das opções mais elegantes ...
Tom Wenseleers
@TomWenseleers Eu concordo. Observe que esta é a resposta de Greg Snow.
gui11aume
9

Com o pacote gamlss , você pode modelar a distribuição de erros da resposta como uma função linear, não linear ou suave das variáveis ​​explicativas. Essa parece ser uma abordagem bastante poderosa (eu aprendi muito sobre todas as possibilidades que podem surgir durante o processo de seleção de modelos) e tudo está bem explicado em várias publicações (incluindo livros) mencionadas no link acima.

ils
fonte
8

A glsfunção no nlmepacote para R pode estimar a regressão e o relacionamento com a variação ao mesmo tempo. Veja o weightsargumento e o segundo exemplo na página de ajuda.

Greg Snow
fonte