SARIMAX预测代码
时间: 2023-06-25 14:04:51 浏览: 65
下面是一个简单的 SARIMAX 预测代码示例:
``` python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import statsmodels.api as sm
# 读取数据
data = pd.read_csv('data.csv', index_col='Date', parse_dates=True)
# 拆分训练集和测试集
train_data = data[:'2019']
test_data = data['2020':]
# 定义 SARIMAX 模型
model = sm.tsa.statespace.SARIMAX(train_data, order=(1, 1, 1), seasonal_order=(1, 1, 1, 12))
# 拟合模型
result = model.fit()
# 预测数据
predictions = result.predict(start='2020-01-01', end='2020-12-31')
# 绘制预测结果
fig, ax = plt.subplots(figsize=(15, 6))
ax.plot(train_data.index, train_data, label='Historical')
ax.plot(test_data.index, test_data, label='Actual')
ax.plot(predictions.index, predictions, label='Predicted')
ax.legend()
plt.show()
```
在这个示例中,我们首先读取了一个时间序列数据集,并将其拆分为训练集和测试集。然后,我们定义了一个 SARIMAX 模型,并使用训练数据进行拟合。最后,我们使用该模型进行预测,并将预测结果与测试数据进行比较。