溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python時間序列處理之ARIMA模型的使用講解

發(fā)布時間:2020-10-20 08:22:50 來源:腳本之家 閱讀:325 作者:Reclusiveman 欄目:開發(fā)技術(shù)

ARIMA模型

ARIMA模型的全稱是自回歸移動平均模型,是用來預(yù)測時間序列的一種常用的統(tǒng)計模型,一般記作ARIMA(p,d,q)。

ARIMA的適應(yīng)情況

ARIMA模型相對來說比較簡單易用。在應(yīng)用ARIMA模型時,要保證以下幾點:

  • 時間序列數(shù)據(jù)是相對穩(wěn)定的,總體基本不存在一定的上升或者下降趨勢,如果不穩(wěn)定可以通過差分的方式來使其變穩(wěn)定。
  • 非線性關(guān)系處理不好,只能處理線性關(guān)系

判斷時序數(shù)據(jù)穩(wěn)定

基本判斷方法:穩(wěn)定的數(shù)據(jù),總體上是沒有上升和下降的趨勢的,是沒有周期性的,方差趨向于一個穩(wěn)定的值。

ARIMA數(shù)學(xué)表達(dá)

ARIMA(p,d,q),其中p是數(shù)據(jù)本身的滯后數(shù),是AR模型即自回歸模型中的參數(shù)。d是時間序列數(shù)據(jù)需要幾次差分才能得到穩(wěn)定的數(shù)據(jù)。q是預(yù)測誤差的滯后數(shù),是MA模型即滑動平均模型中的參數(shù)。

a) p參數(shù)與AR模型

AR模型描述的是當(dāng)前值與歷史值之間的關(guān)系,滯后p階的AR模型可以表示為:

Python時間序列處理之ARIMA模型的使用講解

其中u是常數(shù),et代表誤差。

b) q參數(shù)與MA模型

MA模型描述的是當(dāng)前值與自回歸部分的誤差累計的關(guān)系,滯后q階的MA模型可以表示為:

Python時間序列處理之ARIMA模型的使用講解

其中u是常數(shù),et代表誤差。

c) d參數(shù)與差分

一階差分:

Python時間序列處理之ARIMA模型的使用講解

二階差分:

Python時間序列處理之ARIMA模型的使用講解

d) ARIMA = AR+MA

Python時間序列處理之ARIMA模型的使用講解

ARIMA模型使用步驟

  • 獲取時間序列數(shù)據(jù)
  • 觀測數(shù)據(jù)是否為平穩(wěn)的,否則進行差分,化為平穩(wěn)的時序數(shù)據(jù),確定d
  • 通過觀察自相關(guān)系數(shù)ACF與偏自相關(guān)系數(shù)PACF確定q和p

Python時間序列處理之ARIMA模型的使用講解

  • 得到p,d,q后使用ARIMA(p,d,q)進行訓(xùn)練預(yù)測

Python調(diào)用ARIMA

#差分處理
diff_series = diff_series.diff(1)#一階
diff_series2 = diff_series.diff(1)#二階
#ACF與PACF
#從scipy導(dǎo)入包
from scipy import stats
import statsmodels.api as sm
#畫出acf和pacf
sm.graphics.tsa.plot_acf(diff_series)
sm.graphics.tsa.plot_pacf(diff_series)
#arima模型
from statsmodels.tsa.arima_model import ARIMA
model = ARIMA(train_data,order=(p,d,q),freq='')#freq是頻率,根據(jù)數(shù)據(jù)填寫
arima = model.fit()#訓(xùn)練
print(arima)
pred = arima.predict(start='',end='')#預(yù)測

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對億速云的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI