以下是一个部署 SARIMA 模型的 Python 示例:
pip install pandas numpy statsmodels matplotlib
import pandas as pd
import numpy as np
from statsmodels.tsa.statespace.sarimax import SARIMAX
import matplotlib.pyplot as plt
data = pd.read_csv('data.csv') # 替换为你的数据文件路径
data['date'] = pd.to_datetime(data['date']) # 假设日期列为 'date'
data.set_index('date', inplace=True)
# 拟合模型
model = SARIMAX(data, order=(1, 0, 1), seasonal_order=(1, 1, 1, 12))
model_fit = model.fit()
# 预测未来值
future_dates = pd.date_range(start='2022-01-01', end='2022-12-31', freq='MS') # 替换为你希望预测的时间范围
forecast = model_fit.predict(start=len(data), end=len(data) + len(future_dates) - 1, dynamic=True)
# 绘制预测结果
plt.plot(data.index, data.values, label='Actual')
plt.plot(future_dates, forecast, label='Forecast')
plt.legend()
plt.show()
在上面的示例中,我们加载了一个名为 'data.csv' 的时间序列数据文件,并将其拟合到 SARIMA 模型中。然后,我们使用拟合的模型预测了未来一年的值,并使用 matplotlib 绘制了实际值和预测值的图表。
请确保将示例代码中的数据文件路径和时间范围替换为适用于你的情况的值。