时间序列预测,究竟需要多少历史数据?
显然,这个问题并没有一个固定的答案,而是会根据特定的问题而改变。
在本教程中,我们将基于 Python 语言,对模型输入大小不同的历史数据,对时间序列预测问题展开讨论,探究历史数据对 ARIMA 预测模型的性能影响。(雷锋网(公众号:雷锋网)注:ARIMA 全程是 Autoregressive Integrated Moving Average Model,即自回归积分滑动平均模型)
具体来说,在本教程中,我们将:
● 加载标准数据集并输入 ARIMA 模型;
● 对历史数据年份进行敏感性分析;
● 分析敏感性分析的结果。
通过本例提供的模板,大家将可以根据各自特定的时间序列预测场景,展开类似的针对历史数据大小的敏感性分析。
加载数据集
本例中我们使用来自澳大利亚气象局的一份数据,该数据描述了墨尔本市 10 年(1981 - 1990年)内的每日最低气温,单位为摄氏度,观测值共 3650 次。
这里我们将下载好的数据集保存在 daily-minimum-temperature.csv 文件中。
这里需要注意的是,下载文件中有一些多余的“?”字符,可以通过文本编辑器打开并删除,否则模型无法处理。此外,文件中的脚注信息也需要删除。
以下代码展示了如何加载数据库,并生成 Pandas 库中的 Series 对象。
# line plot of time series from pandas import Series from matplotlib import pyplot # load dataset series = Series.from_csv('daily-minimum-temperatures.csv', header=0) # display