arima模型预测实例python
时间: 2023-10-05 16:08:57 浏览: 125
好的,关于ARIMA模型的Python预测示例,以下是一个简单的范例:
首先,需要导入必要的库和数据集。以下是相应库的导入语句以及数据集的获取方式:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from statsmodels.tsa.arima_model import ARIMA
# 获取数据集
data = pd.read_csv("data.csv")
```
接着,需要将时间序列数据处理成可分析的形式。以下是代码示例:
```python
# 将时间序列数据转换为合适的格式
time_series = pd.Series(data['sales'].values, index=data['date'])
# 按月份对时间序列数据进行重采样
resampled_series = time_series.resample('M').sum().fillna(0)
```
现在,已经有了时间序列数据的基本形式,接下来需要找到合适的 ARIMA 模型,然后进行预测。以下是代码示例:
```python
# 根据所提取的时间序列数据,拟合自回归(AR)模型
model = ARIMA(resampled_series, order=(1, 0, 0)) # 这里采用了 ARIMA 的定义
# 用已经训练好的模型拟合训练数据
results_AR = model.fit(disp=-1)
# 进行预测
preds = results_AR.predict(start='2019-07-31', end='2021-06-30', dynamic=False)
```
最后,将预测结果可视化。以下是代码示例:
```python
# 将预测结果可视化
fig, ax = plt.subplots()
ax.plot(resampled_series.index, resampled_series.values, label='Actual Sales')
ax.plot(preds.index, preds.values, label='Predicted Sales')
ax.set(title='Sales Predictions', xlabel='Date', ylabel='Sales in Quantity',
xlim=[pd.Timestamp('2018-01-31'), pd.Timestamp('2022-12-31')])
ax.legend()
plt.show()
```
希望以上内容能够对您有所帮助。如果您还有其他问题,请继续提问。
阅读全文