两个时间序列之间的关系:ARIMA


12

给定以下两个时间序列(xy;见下文),在此数据中长期趋势之间的关系建模的最佳方法是什么?

当作为时间的函数进行建模时,两个时间序列都具有显着的Durbin-Watson检验,而且都不是平稳的(据我所知,这是否意味着它只需要在残差中保持平稳?)。有人告诉我,这意味着我应该先取每个时间序列的一阶差(至少,甚至是二阶),然后才能将一个模型建模为另一个函数,本质上是利用arima(1,1,0 ),arima(1,2,0)等。

我不明白为什么您需要在建模之前就下降趋势。我知道需要对自相关建模,但我不明白为什么需要进行微分。对我而言,似乎通过差分进行的去趋势消除了我们感兴趣的数据中的主要信号(在这种情况下为长期趋势),并留下了高频“噪声”(宽松地使用噪声)。确实,在模拟中,我在一个时间序列与另一个时间序列之间建立了几乎完美的关系,并且没有自相关关系,对时间序列求差使我得到的结果对于关系检测而言是违反直觉的,例如,

a = 1:50 + rnorm(50, sd = 0.01)
b = a + rnorm(50, sd = 1)
da = diff(a); db = diff(b)
summary(lmx <- lm(db ~ da))

在这种情况下,ba密切相关,但是b具有更多的噪声。对我来说,这表明在检测低频信号之间的关系的理想情况下,差分并不起作用。我了解到,差分通常用于时间序列分析,但是对于确定高频信号之间的关系似乎更有用。我想念什么?

示例数据

df1 <- structure(list(
x = c(315.97, 316.91, 317.64, 318.45, 318.99, 319.62, 320.04, 321.38, 322.16, 323.04, 324.62, 325.68, 326.32, 327.45, 329.68, 330.18, 331.08, 332.05, 333.78, 335.41, 336.78, 338.68, 340.1, 341.44, 343.03, 344.58, 346.04, 347.39, 349.16, 351.56, 353.07, 354.35, 355.57, 356.38, 357.07, 358.82, 360.8, 362.59, 363.71, 366.65, 368.33, 369.52, 371.13, 373.22, 375.77, 377.49, 379.8, 381.9, 383.76, 385.59, 387.38, 389.78), 
y = c(0.0192, -0.0748, 0.0459, 0.0324, 0.0234, -0.3019, -0.2328, -0.1455, -0.0984, -0.2144, -0.1301, -0.0606, -0.2004, -0.2411, 0.1414, -0.2861, -0.0585, -0.3563, 0.0864, -0.0531, 0.0404, 0.1376, 0.3219, -0.0043, 0.3318, -0.0469, -0.0293, 0.1188, 0.2504, 0.3737, 0.2484, 0.4909, 0.3983, 0.0914, 0.1794, 0.3451, 0.5944, 0.2226, 0.5222, 0.8181, 0.5535, 0.4732, 0.6645, 0.7716, 0.7514, 0.6639, 0.8704, 0.8102, 0.9005, 0.6849, 0.7256, 0.878),
ti = 1:52), 
.Names = c("x", "y", "ti"), class = "data.frame", row.names = 110:161)

ddf<- data.frame(dy = diff(df1$y), dx = diff(df1$x))
ddf2<- data.frame(ddy = diff(ddf$dy), ddx = diff(ddf$dx))
ddf$ti<-1:length(ddf$dx); ddf2$year<-1:length(ddf2$ddx)
summary(lm0<-lm(y~x, data=df1))      #t = 15.0
summary(lm1<-lm(dy~dx, data=ddf))    #t = 2.6
summary(lm2<-lm(ddy~ddx, data=ddf2)) #t = 2.6

Answers:


6

马特,对于使用不必要的差异结构引起的关注,您说得很对。为了在此处输入图片说明为您的数据找到合适的模型,在此处输入图片说明并在使用ACF为在此处输入图片说明传递函数标识建模过程需要(在这种情况下)适当的差分,以创建固定的替代序列,从而可用于标识关系商店。在这种情况下,对标识的差分要求是X的双差分和Y的单差分。另外,发现双差X的ARIMA滤波器是AR(1)。将此ARIMA滤波器(仅用于识别目的!)应用于两个固定序列,得出以下互相关结构。在此处输入图片说明暗示一个简单的同期关系。在此处输入图片说明。请注意,虽然原始系列展示出非平稳性,但这并不一定意味着在因果模型中需要进行区分。最终模型在此处输入图片说明和最终ACF支持在此处输入图片说明。在关闭最后一个方程式时,除了根据经验确定的水平移动(实际上是拦截变化)之外,

 Y(t)=-4.78 + .192*X(t) - .177*X(t-1) which is NEARLY equal to 

 Y(t)=-4.78 + .192*[X(t)-X(t-1)] which means that changes in X effect the level of Y

最后,请注意建议模型的特征。在此处输入图片说明

Level Shift系列(0,0,0,0,0,0,0,0,0,1,1,.........,1)建议如果不进行处理,模型残差将显示水平在时间周期10 THTH或附近移动,则基于“ -4.10的t检验”,对于前10个残差和最后42个残差之间的公共残差均值的假设检验在alpha = .0002时将很重要。请注意,包含常数可确保残差的总体均值与零BUT的差异不大,这不一定适用于所有子集时间间隔。下图清楚地表明了这一点(假设您被告知要看!)。Actual / Fit / Forecast非常有启发性在此处输入图片说明。统计信息就像路灯柱,有人用它们靠着灯柱,有人用它们来照明。


感谢您进行全面的分析Dave。请确保我理解,2是x变量,3是滞后-1 的x变量,4是电平转换?没有Arima规格?
马特·阿尔布雷希特

@MattAlbrecht Y是从属(您的y的值为.0192,-。0748 ...); X1是您的x的值为315.97;X2是一个虚拟变量0,0,0,0,0,0,0,0,0,1,1,1,... 1。X1变量具有同时和滞后效应,其系数分别为[.192和-.177]。最终的完整方程式是
IrishStat

@MattAlbrecht Y是从属(您的y的值为.0192,-。0748 ...); X1是您的x的值为315.97;X2是一个虚拟变量0,0,0,0,0,0,0,0,0,1,1,1,... 1。X1变量同时具有滞后效应和滞后效应,系数分别为[.192和-.177]。最后的完整方程有4个系数; 一个常数; 您的x和a的两个系数
IrishStat,2012年

1

我也不明白那个建议。相差消除多项式趋势。如果因趋势不同而序列相似,则差异将基本上消除该关系。仅当您希望将去趋势化的组件相关联时,才可以这样做。如果相同的微分阶数导致残差的acfs,看起来它们可能来自包含白噪声的平稳ARMA模型,则可能表明两个序列具有相同或相似的多项式趋势。


当没有趋势时,差异还可用于补救非平稳性。如正确指出的那样,不当使用会造成统计/计量经济学上的废话。
IrishStat 2012年

1

以我的理解,微分在互相关函数中给出了更清晰的答案。比较ccf(df1$x,df1$y)ccf(ddf$dx,ddf$dy)


我同意互相关表明差异序列之间存在什么关系,但是我的观点是这些序列似乎是相关的,主要是因为差异消除的趋势。
Michael R. Chernick

您不在那里回答自己的问题吗?有一个共同的趋势,我们对此表示同意。差异化可以忽略趋势:趋势周围的波动如何?在这种情况下,x和y之间的相关发生在滞后0和8。滞后8的影响在ddf $ dy的自相关中也可见。不区分就不会知道这一点。
Kees 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.