bounty还有6天到期。回答此问题可获得+50声望奖励。gerardlambert希望引起更多关注这个问题。
我试图运行一个for循环,以创建一个列表/数据框对象,它将给予我一组与0显著不同的ACF系数(在置信区间之外)。我不太确定我的for循环是否能做到这一点,但无论如何,它给了我以下错误消息:
Error in if (acf_res$ci[2, i + 1] < acf_res$acf[i + 1] || acf_res$ci[1, :
missing value where TRUE/FALSE needed
以下是我目前的代码,我正在研究法国1981年至1999年电力生产的单变量时间序列:
production_periode_1 <-periode_1$`Production brute d'électricité nucléaire (en GWh)`
prod_periode_1 <- ts(periode_1, frequency=12)
prod_periode_1 <- ts(production_periode_1, start=c(1981,1) , end=c(1999,12),
frequency=12)
summary(prod_periode_1)
plot.ts(prod_periode_1)
plot(ts.union(prod_periode_1,log(prod_periode_1)))
acf(prod_periode_1,lag.max=150)
acf(diff(prod_periode_1),lag.max=150)
acf(diff(diff(prod_periode_1,12)),lag.max=150)
pacf(prod_periode_1, lag.max = 250)
pacf(diff(prod_periode_1), lag.max = 250)
pacf(diff(diff(prod_periode_1,12), lag.max = 250))
for (i in 1:228) {
acf_res <- acf(prod_periode_1, lag.max = i, plot = FALSE)
if (acf_res$ci[2, i+1] < acf_res$acf[i+1] || acf_res$ci[1, i+1] > acf_res$acf[i+1]) {
print(paste("Coefficient significatif pour lag", i))
} else {
print(paste("Pas de coefficient significatif pour lag", i))
}
}
以下是我的数据集的结构,用于再现性:
structure(c(36509.514, 34485.002, 33702.518, 31274.906, 30241.116,
31542.381), tsp = c(1981, 1981.41666666667, 12), class = "ts")
我会很感激任何建议!
1条答案
按热度按时间llycmphe1#
如果假设滞后值为白色噪声,则此代码计算95%置信区间: