有什么方法可以在python中使用ARIMA模型预测时间序列数据吗



我尝试使用ARIMA模型预测target_price_index,这是预测时间序列的一个很好的选择。我的数据是每月的时间序列,我想从数据中预测target_price_index。我曾使用scikit-learn进行预测任务,但对在时间序列上使用ARIMA模型知之甚少。为此,我尝试如下:

我的尝试

这是我在gist 上使用的示例数据和可再现时间序列数据的可再现时间系列数据

from statsmodels.tsa.arima_model import ARIMA
from matplotlib import pyplot
import pandas as pd
df = pd.read_csv("finaldf.csv", sep="t")
model = ARIMA(df['target_price_index'], order=(5,1,0))
model_fit = model.fit(disp=0)
print(model_fit.summary())
# plot residual errors
residuals = DataFrame(model_fit.resid)
residuals.plot()
pyplot.show()
residuals.plot(kind='kde')
pyplot.show()
print(residuals.describe())

但上述尝试的结果并不令人满意,因为我看不到对时间序列数据进行预测的任何好处。有人能告诉我,有没有任何有效的管道或分析方法来获得有意义的预测结果?有什么建议吗?对此有什么想法吗?谢谢

我还在SO中尝试了这篇文章,但仍然无法正确预测我的时间序列数据。有人有可能的想法吗?谢谢

我发现代码有几个问题:

  1. csv文件使用制表符作为分隔符:

    df = pd.read_csv("finaldf.csv",sep='t')
    
  2. 当您实例化ARIMA模型时,第一个参数应该是您的目标:

    model = ARIMA(df.target_prc_index,order=(5,1,0))
    

最新更新