簡體   English   中英

具有預測間隔的時間序列圖

[英]Time series plot with prediction interval

我在R中的時間序列圖中遇到了問題。更具體地說,是對它的預測。

這是數據集,它是從英格蘭中部溫度(CET)數據集中獲取的氣象數據。 我已將其削減至僅包括過去6年,並包含月平均溫度。

Year JAN FEB MAR  APR  MAY  JUN  JUL  AUG  SEP  OCT NOV  DEC
2007 7.0 5.8 7.2 11.2 11.9 15.1 15.2 15.4 13.8 10.9 7.3  4.9
2008 6.6 5.4 6.1  7.9 13.4 13.9 16.2 16.2 13.5  9.7 7.0  3.5
2009 3.0 4.1 7.0 10.0 12.1 14.8 16.1 16.6 14.2 11.6 8.7  3.1
2010 1.4 2.8 6.1  8.8 10.7 15.2 17.1 15.3 13.8 10.3 5.2 -0.7
2011 3.7 6.4 6.7 11.8 12.2 13.8 15.2 15.4 15.1 12.6 9.6  6.0
2012 5.4 3.8 8.3  7.2 11.7 13.5 15.5 16.6 13.0  9.7 6.8  4.8

但是,我的數據集沒有年份列,它只列出1-6作為行名稱,因為我遇到了問題。

現在我使用了arima()函數,數據集稱為數據

m <- arima(data, order = c(2, 0, 0), seasonal = list(order = c(1, 0, 0)))

我在季節性部分使用了其他數字,但這給出了最低的AIC。

然后我用了

pm <- predict(m, n.ahead = 12, se.fit = TRUE)

ts.plot(cbind(f, pm$pred, pm$pred-2*pm$se, pm$pred+2*pm$se), col = ("black", "black", "red", "red"))

這應該產生一個時間序列圖,該特定模型的預測間隔為95%。

但是,我收到此錯誤:

Error in xy.coords(x = matrix(rep.int(tx, k), ncol = k), y = x, log = log) : 
  (list) object cannot be coerced to type 'double'

任何幫助/建議將不勝感激。

安裝forecast包。 它提供了一種計算間隔的預測方法,以及一種繪圖方法。

install.packages("forecast")
library(forecast)
pm <- forecast(m, h=12)
plot(pm)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM