我正试图用Python和Statsmodels对ARIMA进行预测。具体来说,要使ARIMA算法工作,需要通过差分(或类似方法)使数据保持平稳。问题是:在进行了残差预测之后,如何反转差分,以回到包含趋势和季节性差异的预测?在
(我看到了一个类似的问题here,但是没有答案。)
以下是我到目前为止所做的(基于掌握Python数据分析最后一章中的示例,Magnus Vilhelm Persson;Luiz Felipe Martins)。数据来自DataMarket。在%matplotlib inline
import matplotlib.pyplot as plt
import pandas as pd
from statsmodels import tsa
from statsmodels.tsa import stattools as stt
from statsmodels.tsa.seasonal import seasonal_decompose
from statsmodels.tsa.arima_model import ARIMA
def is_stationary(df, maxlag=15, autolag=None, regression='ct'):
"""Test if df is stationary using Augmented
Dickey Fuller"""
adf_test = stt.adfuller(df,maxlag=maxlag, autolag=autolag, regression=regression)
adf = adf_test[0]
cv_5