ARIMA模型建模流程?
建模流程
1)平穩(wěn)性檢驗與差分處理
我們選取原始數(shù)據(jù)bus中的“prf_get_person_count”列,并截取前32個站點的數(shù)據(jù)進行平穩(wěn)性檢驗,這里采用的是ADF檢驗確定數(shù)據(jù)的平穩(wěn)性,導入statsmodels包下的adfuller函數(shù),該函數(shù)返回adf值與概率p值。若原始序列不平穩(wěn),就進行差分處理,并對一階差分序列再次進行ADF檢驗,直至序列平穩(wěn),進行后續(xù)分析。
2)白噪聲檢驗
白噪聲數(shù)據(jù)沒有分析價值,所以要進行白噪聲檢驗,LB檢驗可以確定數(shù)據(jù)是否為白噪聲,這里導入的是statsmodels包下的acorr_ljungbox函數(shù)。
3)模型定階
使用AIC準則進行模型參數(shù)估計與模型定階,這里通過繪制AIC數(shù)據(jù)表aic_frame以及其對應的熱力圖來直觀地找出AIC值最小時對應的ARIMA(p,d,q)中的p、q值,從而確定模型。
4)預測
model1對應ARIMA(4,2,3),其AIC值最小;model2對應ARIMA(3,2,1),其AIC值最大。選取兩個模型進行對比分析。
output1和output2為預測值,通過繪制原始數(shù)據(jù)與預測數(shù)據(jù)圖,可以直觀地感受模型的擬合效果。
5)模型檢驗
首先繪制殘差圖,觀察殘差序列中是否有明顯的趨勢性或者季節(jié)性特征。
使用LB檢驗殘差序列是否為白噪聲,若是白噪聲,則模型性能較好,反之則差。
通過繪制殘差序列直方圖密度圖和QQ圖來對殘差序列進行正態(tài)性檢驗,殘差序列越接近正態(tài)分布,模型的性能就越好。
結(jié)果分析
1)平穩(wěn)性檢驗與差分處理結(jié)果
原始數(shù)據(jù)(左)與單條路線數(shù)據(jù)(右)
原始數(shù)據(jù)單位根檢驗結(jié)果為p=0.70,遠高于0.05,認為序列中存在單位根,即原始序列不平穩(wěn)。對數(shù)據(jù)進行一階差分后結(jié)果如左圖所示,其單位根檢驗結(jié)果為0.94,一階差分序列不平穩(wěn)。對數(shù)據(jù)進行二階差分后結(jié)果如右圖所示,其單位根檢驗結(jié)果為0.034,認為二階差分序列滿足平穩(wěn)性要求,即后續(xù)建模過程中ARIMA(p,d,q)中的d選擇2。
一階差分序列(上)與二階差分序列(下)
2)白噪聲檢驗結(jié)果
LB檢驗的概率p值為0.0106,認為該時間序列為非白噪聲序列,可以進行后續(xù)分析。
3)模型定階結(jié)果
繪制二階差分序列的ACF與PACF圖,均表現(xiàn)出明顯的拖尾。
ACF圖(左)與PACF圖(右)
根據(jù)AIC準則,繪制熱力圖如下,可以看出,AIC最小值與最大值對應的參數(shù)分別為p=4,q=3和p=3,q=1,故我們選擇ARIMA(4,2,3)作為model1,選擇ARIMA(3,2,1)作為model2,對比分析兩個模型對數(shù)據(jù)的擬合效果。
AIC值熱力圖
4)預測結(jié)果
分別繪制model1與model2的預測圖如圖所示:
model1(左)與model2(右)真實值與預測值對比圖
5)模型檢驗結(jié)果
首先繪制model1和model2的殘差序列圖,觀察其是否具有明顯的趨勢性和季節(jié)性特征,為后續(xù)檢驗做準備。
model1(左)與model2(右)殘差序列圖
?????? 繪制殘差序列的直方圖密度圖,可以看出model1與model2均大致服從正態(tài)分布,且model1的正態(tài)性更明顯。
model1(左)與model2(右)殘差序列直方圖密度圖
??????? 繪制殘差序列的QQ圖,可以看出,兩個圖均表現(xiàn)出中間密兩頭疏和大致為一條直線的特點,且model1明顯優(yōu)于model2。
model1(左)與model2(右)殘差序列QQ圖
對殘差序列進行白噪聲檢驗,得到model1和model2的殘差序列LB檢驗的概率p值分別為0.8和0.676,可以認為兩個模型的殘差序列均為白噪聲序列,且model1的性能略高于model2,與前面的AIC值相符合。
ARIMA模型特點:
優(yōu)點:模型簡單,易于解釋;可以通過差分處理非平穩(wěn)時間序列。
缺點:只適用于短期預測,長期預測準確度較低。
python代碼:文章來源:http://www.zghlxwxcb.cn/news/detail-428372.html
https://download.csdn.net/download/m0_48973594/85800180https://download.csdn.net/download/m0_48973594/85800180文章來源地址http://www.zghlxwxcb.cn/news/detail-428372.html
到了這里,關于ARIMA模型時間序列數(shù)據(jù)分析(附python代碼)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!