传统ARIMA步骤:
加载数据:模型建立的第一步当然是加载数据集。
预处理:取决于数据集,预处理的步骤将被定义。这将包括创建时间戳、转换日期/时间列的dType、制作系列单变量等。
使系列平稳:为了满足假设,有必要使系列平稳。这将包括检查序列的平稳性和执行所需的变换。
确定值:为了使序列平稳,将执行差值操作的次数作为d值
创建ACF和PACF图:这是ARIMA实施中最重要的一步。ACF PACF图用于确定我们的ARIMA模型的输入参数。
确定p和q值:从前一步的图中读取p和q的值
拟合ARIMA模型:使用处理后的数据和我们先前步骤计算的参数值,拟合ARIMA模型
预测集上的预测值:预测未来价值
计算MSE或者RMSE:为了检查模型的性能,使用验证集上的预测和实际值检查MSE或者RMSE值
在实现的过程使用SARIMAX实现,这是一个包含季节趋势因素的ARIMA模型。
下面直接上代码:
data:直接采用 facebook 的prophet时序算法中examples的数据,可以在git上下载。
begin:
# Load data
df = pd.read_csv('data/example_air_passengers.csv')
df.ds = pd.to_datetime(df.ds)
df.index = df.ds
df.drop(['ds'], axis