2016-10-02 54 views
1

我有下列數據的CSV文件:使用ETS爲時間序列分析轉換數據()

Year 1000 Barrels/Day 
1/15/2000 239 
2/15/2000 267 
3/15/2000 162 
4/15/2000 264 
5/15/2000 170 
6/15/2000 210 
7/15/2000 264 
8/15/2000 405 
9/15/2000 352 
10/15/2000 337 

我跑下面的代碼爲它的轉換以用於處理時間序列格式。

library(xts) 
library(forecast) 
df<- read.csv("US-OIL.csv") 
stocks <- xts(df[,-1], order.by=as.Date(df[,1], "%m/%d/%Y")) 
ets(stocks) 

但是當我運行的最後一行,獲得帶有ETS(A,N,N)模型的輸出。 我不知道爲什麼會發生這種情況,因爲當我運行ets()預加載的數據集elecequiplibrary(fpp)我得到一個輸出ETS(M,Ad,M) 不知道爲什麼這種差異。請在這個問題上提出你的意見。

回答

0

您讓ets根據AIC,AICcm或BIC自動選擇模型。 elecquip數據集的數據不同,因此模型也不同。

見幻燈片24:

http://robjhyndman.com/talks/RevolutionR/6-ETS.pdf

+0

這是否意味着我的數據集沒有任何季節性趨勢?你可以推薦一個'ets()'的替代品,它可以用來根據這些數據預測下5個時期。謝謝 – arsm4

+0

我的建議是,您可以通過預測包作者閱讀這本令人敬畏的書:https://www.otexts.org/fpp。我認爲你需要更多的數據來做出預測,因爲你甚至沒有一整年的時間,我不知道你如何估計季節性(http://robjhyndman.com/hyndsight/short-time-series/ )。我會預測未來5個時期的平均值(267)。 – AidanGawronski

+0

以上是我所附的數據樣本。實際數據由172行(2000年至2014年)組成。當我嘗試運行'HoltWinters(股票)'時,我得到以下錯誤:分解中的錯誤(ts(x [1L:wind],start = start(x),頻率= f),季節性): time series has沒有或少於2個時期'。任何意見?? – arsm4