J'ai une matrice avec deux colonnes qui ont beaucoup de prix (750). Dans l'image ci-dessous, j'ai tracé les résidus de la régression linéaire suivante:
lm(prices[,1] ~ prices[,2])
En regardant l'image, cela semble être une très forte autocorrélation des résidus.
Cependant, comment puis-je tester si l'autocorrélation de ces résidus est forte? Quelle méthode dois-je utiliser?
Merci!
acf()
), mais cela confirmera simplement ce qui peut être vu à l'œil nu: les corrélations entre les résidus retardés sont très élevées.qt(0.75, numberofobs)/sqrt(numberofobs)
Réponses:
Il existe probablement de nombreuses façons de procéder, mais la première qui vient à l'esprit est basée sur la régression linéaire. Vous pouvez régresser les résidus consécutifs les uns contre les autres et tester une pente significative. S'il y a auto-corrélation, alors il devrait y avoir une relation linéaire entre les résidus consécutifs. Pour terminer le code que vous avez écrit, vous pouvez faire:
mod2 est une régression linéaire de l' erreur de temps , ε t , contre l' erreur de temps t - 1 , ε t - 1 . si le coefficient de res [-1] est significatif, vous avez des preuves d'autocorrélation dans les résidus.t εt t - 1 εt - 1
Remarque: Cela suppose implicitement que les résidus sont autorégressifs en ce sens que seul est important pour prédire ε t . En réalité, il pourrait y avoir des dépendances à plus longue portée. Dans ce cas, cette méthode que j'ai décrite doit être interprétée comme l'approximation autorégressive à un décalage de la véritable structure d'autocorrélation dans ε .εt - 1 εt ε
la source
Utilisez le test Durbin-Watson , implémenté dans le package lmtest .
la source
Le test DW ou le test de régression linéaire ne sont pas robustes aux anomalies dans les données. Si vous avez des impulsions, des impulsions saisonnières, des changements de niveau ou des tendances de l'heure locale, ces tests sont inutiles car ces composants non traités gonflent la variance des erreurs, biaisant ainsi les tests vous obligeant (comme vous l'avez découvert) à accepter incorrectement l'hypothèse nulle de non auto-corrélation. Avant de pouvoir utiliser ces deux tests ou tout autre test paramétrique dont je suis au courant, il faut "prouver" que la moyenne des résidus n'est pas statistiquement significativement différente de 0,0 PARTOUT sinon les hypothèses sous-jacentes ne sont pas valides. Il est bien connu que l'une des contraintes du test DW est son hypothèse selon laquelle les erreurs de régression sont normalement distribuées. A noter entre autres des moyens normalement répartis: pas d'anomalie (voirhttp://homepage.newschool.edu/~canjels/permdw12.pdf ). De plus, le test DW ne teste que l'auto-corrélation du décalage 1. Vos données pourraient avoir un effet hebdomadaire / saisonnier et cela ne serait pas diagnostiqué et, de plus, non traité, biaiserait à la baisse le test DW.
la source