Aşağıdaki iki zaman serisi göz önüne alındığında ( x , y ; aşağıya bakınız), bu verilerdeki uzun vadeli eğilimler arasındaki ilişkiyi modellemek için en iyi yöntem nedir?
Her iki zaman serisi de zamanın bir fonksiyonu olarak modellenirken önemli Durbin-Watson testlerine sahiptir ve ikisi de durağan değildir (terimi anladığım gibi, ya da bunun artıklarda sadece durağan olması gerektiği anlamına mı geliyor?). Bunun, her biri zaman serisinin birinci dereceden bir farkını (en azından belki de 2. derecesini) almam gerektiği anlamına geldi. ), arima (1,2,0) vb.
Onları modellemeden önce neden dezavantaj almanız gerektiğini anlamıyorum. Otomatik korelasyonu modelleme ihtiyacını anlıyorum, ama neden farklı olması gerektiğini anlamıyorum. Bana göre, farklılaşarak detrending, ilgilendiğimiz verilerdeki birincil sinyalleri (bu durumda uzun vadeli eğilimler) kaldırmak ve daha yüksek frekanslı "gürültüyü" (gürültü terimini gevşek kullanarak) bırakmak gibi görünüyor. Gerçekten de, bir zaman serisi ile diğeri arasında otokorelasyon olmadan neredeyse mükemmel bir ilişki oluşturduğum simülasyonlarda, zaman serisini farklılaştırmak bana ilişki algılama amaçları için mantıksız sonuçlar verir, örneğin,
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))
Bu durumda, b , a ile güçlü bir şekilde ilişkilidir , ancak b daha fazla gürültüye sahiptir. Bana göre bu, farklılığın düşük frekans sinyalleri arasındaki ilişkileri tespit etmek için ideal bir durumda çalışmadığını gösterir . Farklılığın zaman serisi analizi için yaygın olarak kullanıldığını anlıyorum, ancak yüksek frekanslı sinyaller arasındaki ilişkileri belirlemek için daha yararlı gibi görünüyor. Neyi kaçırıyorum?
Örnek Veriler
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