我有一个包含两列的矩阵,这两列具有很多价格(750)。在下图中,我绘制了线性回归的残差:
lm(prices[,1] ~ prices[,2])
看图像,似乎是残差的很强的自相关。
但是,如何测试这些残差的自相关性是否强?我应该使用什么方法?
谢谢!
qt(0.75, numberofobs)/sqrt(numberofobs)
我有一个包含两列的矩阵,这两列具有很多价格(750)。在下图中,我绘制了线性回归的残差:
lm(prices[,1] ~ prices[,2])
看图像,似乎是残差的很强的自相关。
但是,如何测试这些残差的自相关性是否强?我应该使用什么方法?
谢谢!
qt(0.75, numberofobs)/sqrt(numberofobs)
Answers:
可能有很多方法可以做到这一点,但是想到的第一个方法是基于线性回归的。您可以使连续残差彼此相对回归,并测试明显的斜率。如果存在自相关,则连续残差之间应该存在线性关系。要完成您编写的代码,您可以执行以下操作:
mod = lm(prices[,1] ~ prices[,2])
res = mod$res
n = length(res)
mod2 = lm(res[-n] ~ res[-1])
summary(mod2)
模2是时间的线性回归误差,ε 吨,相对于时间吨- 1个误差,ε 吨- 1。如果res [-1]的系数显着,则表明残差具有自相关的证据。
注:此隐含的假设是残差在这个意义上是自回归,只有预测何时是很重要的ε 牛逼。实际上,可能存在更长的范围依赖性。在那种情况下,我描述的这种方法应该解释为对ε中的真实自相关结构的一次滞后自回归近似。
使用在lmtest软件包中实现的Durbin-Watson测试。
dwtest(prices[,1] ~ prices[,2])
DW检验或线性回归检验对数据异常的鲁棒性不强。如果您有脉搏,季节性脉搏,水平移动或本地时间趋势,则这些测试是无用的,因为这些未处理的组件会增加误差的方差,从而向下偏置测试,导致您(如您所知)错误地接受否定假设自相关。在可以使用这两个测试或我知道的任何其他参数测试之前,必须“证明”残差的平均值在统计学上与0.0 EVERYWHERE并无显着差异,否则基本假设无效。众所周知,DW测试的限制条件之一是其假设回归误差呈正态分布。请注意,除其他因素外,正态分布均值:无异常(请参见http://homepage.newschool.edu/~canjels/permdw12.pdf)。此外,DW测试仅测试滞后1的自相关。您的数据可能会产生每周/季节性影响,这将无法诊断,而且未经处理,将使DW测试产生偏差。
acf()
),但这将简单地确认用肉眼可以看到的:滞后残差之间的相关性非常高。