Como realizar um teste de durbin-watson em r
Um dos principais pressupostos da regressão linear é que não há correlação entre os resíduos, ou seja, os resíduos são independentes.
Uma forma de determinar se esta suposição é atendida é realizar um teste de Durbin-Watson , que é usado para detectar a presença de autocorrelação nos resíduos de uma regressão. Este teste usa as seguintes suposições:
H 0 (hipótese nula): Não há correlação entre os resíduos.
H A (hipótese alternativa): Os resíduos são autocorrelacionados.
Este tutorial explica como realizar um teste de Durbin-Watson em R.
Exemplo: teste Durbin-Watson em R
Para realizar um teste de Durbin-Watson, devemos primeiro ajustar um modelo de regressão linear. Usaremos o conjunto de dados R integrado mtcars e ajustaremos um modelo de regressão usando mpg como variável preditora e disp e wt como variáveis explicativas.
#load mtcars dataset data(mtcars) #view first six rows of dataset head(mtcars) mpg cyl disp hp drat wt qsec vs am gear carb Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4 Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4 Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1 Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1 Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2 Valiant 18.1 6 225 105 2.76 3,460 20.22 1 0 3 1 #fit regression model model <- lm(mpg ~ disp+wt, data=mtcars)
Então podemos realizar um teste Durbin-Watson usando a função durbinWatsonTest() do pacote porque :
#load car package library(car) #perform Durbin-Watson test durbinWatsonTest(model) Loading required package: carData lag Autocorrelation DW Statistic p-value 1 0.341622 1.276569 0.034 Alternative hypothesis: rho != 0
A partir do resultado, podemos ver que a estatística de teste é 1,276569 e o valor p correspondente é 0,034 . Como este valor p é inferior a 0,05, podemos rejeitar a hipótese nula e concluir que os resíduos deste modelo de regressão são autocorrelacionados.
O que fazer se a autocorrelação for detectada
Se você rejeitar a hipótese nula e concluir que a autocorrelação está presente nos resíduos, você terá várias opções para corrigir esse problema se considerá-lo suficientemente sério:
- Para correlação serial positiva, considere adicionar defasagens da variável dependente e/ou independente ao modelo.
- Para correlação serial negativa, certifique-se de que nenhuma de suas variáveis esteja atrasada demais .
- Para correlação sazonal, considere adicionar dummies sazonais ao modelo.