iT邦幫忙

0

R 時間序列ARIMA 建模疑問

  • 分享至 

  • xImage

大家好:
我們時常會用log、BoxCox、差分來使時間序列資料趨於穩定,好讓它滿足ARIMA模型的使用前提,但為什麼建模、找參數時,是用原始資料呢? 那剛剛轉換、差分的資料是用於?
以下是我的coding(來自眾多網站貼文)~ ps:資料是亂key的
資料載點 逐月營收(非穩): https://drive.google.com/drive/u/1/folders/1bvkCAR6AKXIunw7tVmMMTEnRtpAFjuQJ

library(forecast)#AUTO-ARIMA
library(tseries) #adf kpss test
data <- read.csv(file="C:\\逐月營收(非穩).csv",header=TRUE,sep=",")
時序格式 <- ts(data$含稅金額, frequency=12, start=c(2012,01))
拆解 <- decompose(時序格式) 
plot(拆解)
adf.test(時序格式) #不穩定,轉換or差分
差分且轉換 <- diff(BoxCox(時序格式,lambda = "auto"),differences = 1)
adf.test(差分且轉換) #穩定

auto.arima(時序格式,stepwise = F,trace = T,stationary = T) 
fit <- arima(時序格式,order=c(2,0,0))

auto.arima 、 fit 這邊充滿疑惑:

  1. 既然原始資料不穩定,那為什麼不是用差分後的資料來擬合與建模
  2. 如果是用原始資料,那剛剛差分後的資料又應該用在哪裡呢?
看更多先前的討論...收起先前的討論...
這是seasonal arima吧?
對齁~感謝提醒,coding已改
order的第二個參數就是差分,如果要做一階差分,你應該要給order=c(2,1,0)才對吧?
因為arima建模時擺的是原始資料(未差分),所以order=c(2,0,0),但是這很奇怪,我自己是認為說既然要穩定資料才符合條件,那為什麼這裡建模是放不穩定的原始資料,而不是我們差分轉換後的穩定資料呢?
https://www.listendata.com/2015/10/arima-modeling-with-r.html
我只有在這篇有看到建模是放轉換後的穩定資料,其他文章都是放原始資料,所以很疑惑
auto.arima是自動定階,arima是手動,應該不會放在一起吧?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答