上期我們介紹了ARIMA模型的理論,在理論的基礎上,本期將結合實例進行軟體操作,本期介紹ARIMA模型的SPSS操作,以方便大家對照用自己的數據:
如果數據有缺失,是無法做ARIMA的模型預測的,所以第一步是缺失值的填補。
點擊數據-定義日期,選擇對於的格式。
如果提供的格式沒有我們想要的,可以用語法自定義。如果我們定義年、周這樣數據,操作如下:文件-新建-語法。語法中CYCLE代表日期循環的起始,默認間隔為1,WEEK代表周次,52代表52周為一個周期。
ARIMA序列分析的前提要求時間序列為零均值的平穩隨機序列。為此我們首先要做時間序列圖對原始的數據進行觀察。
我們得到的序列圖如下,觀察圖形可知時間序列具有明顯的上升性和季節性,對數據進行一次差分與季節性差分轉換,重新獲得新的時間序列圖。再次觀察可知轉換後的時間序列圖基本是一個白噪聲序列。
數據轉換:
數據轉化後時間序列圖:
對未轉換的數據做ACF與PACF圖。
當時間序列較長時可以增大延遲數便於觀察。
得到的ACF圖顯示在特定的節點均出現局部極大值,結合時間序列圖可初步判斷時間序列具有季節性,因此建立的模型應為混合模型(季節+非季節)。
對數據做一次季節性差分觀察得到的ACF與PACF圖。觀察可知ACF圖是拖尾的,而PACF圖是驟減的,初步確定季節性部分可能為AR模型p=1,參數為ARIMA(1,1,0)。
ACF圖:
PACF圖:
以ARIMA(1,1,0)進行建模,步驟如下:
step1:
step2:
切換到「統計量」,選擇需要保存的統計量,將「參數估計」與「顯示預測值」勾選。
step3:
切換到圖表,選擇圖形的選項。
step4:
點擊確定之後輸出結果如下圖:
結果1:參數匯報
結果2:參數檢驗
結果3:殘差ACF與PACF圖
模擬擬合的判斷:
(1)R方:
決定係數,即現有模型可以解釋原變量的多少變異。對於有趨勢有周期波動的序列而言,R方往往有點過於樂觀,因為只要把相應的趨勢解釋掉,可能就佔了相當大的變異解釋,比較客觀的平穩的R方,指的是平穩後的序列,我們的建模可以解釋多少信息。
(2) RMSE:
相當於回歸裡的殘差剩餘的離散程度,殘差的均方
(3)MAPE,MaxAPE:
相當於相對誤差和絕對誤差,相對於原始數據,我們的誤差有百分之多少,2.07%
(4)MAE,MaxAE:
平均的實測誤差,最大的絕對誤差
(5)正態化的BIC:
基於均分誤差的分數,可用於比較相同序列的不同模型的統計量。
(6)模型統計量:
Ljung-Box的sig(P值)告訴我們這個序列是不是白噪聲,該例子中p值<0.05,h0為扣除模型後的殘差是白噪聲,拒絕H0,說明殘差還不是白噪聲,需要加入非季節的模型。
(7)ARIMA模型參數:
t檢驗的p值均小於0.05,說明我們構建的模型參數是有統計學意義的。
(8)殘差的ACF與PACF圖:
ACF圖與PACF圖均為仍不是白噪聲序列,其中ACF圖與PACF圖為拖尾,可初步判定非季節性部分為ARIMA(1,1,1)。
綜上所述,我們的季節模型經過嘗試構建,仍然有不足,仍含有非季節性部分,需要繼續添加非季節性部分。
重複(6)中的步驟,設置模型為ARIMA(1,1,1)(1,1,0)
得到結果如下:
結果1:參數匯報
結果2:參數檢驗
結果3:殘差ACF與PACF圖
結果4:模型擬合效果
結論:輸出的結果顯示Q統計量的p值>0.05,模型的參數均有意義,殘差圖與趨於白噪聲,模型的擬合效果較好,可認為我們創建的模型效果較好。
由觀察得到的模型不一定是最優模型,可能由於觀察的不確定性,有時候不能確定模型到底是拖尾的還是驟減的,可以假設多個可能的模型,然後去比較得到的結果。
例如我們在該例子中季節性部分可能是ARIMA(0,1,1),混合後的模型為ARIMA(1,1,1)(0,1,1),因此我們需要去比較兩個模型的哪個個好。可以選擇正態化的BIC較小的那個。
ARIMA(1,1,1)(0,1,1)得到的結果如下圖。在參數均有意義的前提下比較正態化的BIC,ARIMA(1,1,1)(1,1,0)為7.755,ARIMA(1,1,1)(0,1,1)為7.675,且平穩R方後者稍微高點,因此ARIMA(1,1,1)(0,1,1)較優。
我們可以去把所有可能的結果列出來,然後比較後選擇最優的模型。所以做ARIMA預測的過程是一個探索比較的過程,模型也沒有絕對的好壞。
想要預測未來的數據,在創建模型的時候需要在「保存」與「選項」界面做如下配置,之後在數據視圖界面就能看到結果。
參數配置:
指定預測時間:
一般我們可以將已有的數據集分為分析集與驗證集,分析集用於建模,驗證集用於驗證。對於spss將驗證集與預測值同時選入序列圖後作圖比較二者的擬合程度,或者計算RMSE。可以手動計算RMSE,將驗證集與預測的數據集做差得到的殘差算RMSE。可新建語法輸入」FIT VARIABLES=殘差變量.」得到RMSE結果,比較不同模型的RMSE可知道哪個模型的預測效果更好。
語法輸入:
結果輸出:
1.張文彤.SPSS統計分析高級教程(第二版)
2.孫振球.醫學統計學(第四版)
https://blog.csdn.net/u010159842/article/details/53067828
ARIMA模型需要用戶根據自身數據不斷判斷和調整,是個不斷修正的過程,相對其它模型往往比較複雜和主觀,如果你暫時不能掌握也沒關係,歡迎您隨時與我們交流!
為方便聯盟內部成員交流,特建立微信交流群,由高校、科研院所、臨床醫生構成,由於群人數超過100,需要由工作人員拉你才能入群,工作人員二維碼如下,添加時請備註「申請入群」;此外現轉發我們指定的推文就可送SPSS、SAS、R軟體視頻教程一套,詳情請點擊下方閱讀全文。