请写一段使用Holt-WINTERs季节性模型的预测汽车销量的代码
时间: 2024-02-23 14:02:09 浏览: 73
好的,以下是使用Holt-Winters季节性模型预测汽车销量的代码示例:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from statsmodels.tsa.api import ExponentialSmoothing
# 读取数据
data = pd.read_csv('car_sales.csv', index_col='Month', parse_dates=True)
data.index.freq = 'MS'
# 拆分训练集和测试集
train = data.iloc[:-12]
test = data.iloc[-12:]
# 构建Holt-Winters季节性模型
model = ExponentialSmoothing(train,
trend='add',
seasonal='add',
seasonal_periods=12).fit()
# 对测试集进行预测
pred = model.forecast(12)
# 绘制预测结果和实际值
plt.figure(figsize=(10, 4))
plt.plot(train.index, train.values, label='Training Data')
plt.plot(test.index, test.values, label='Testing Data')
plt.plot(pred.index, pred.values, label='Predicted Data')
plt.title('Car Sales Forecast with Holt-Winters Model')
plt.legend(loc='best')
plt.show()
```
在上面的代码中,我们首先读取了汽车销量的时间序列数据,并将其拆分为训练集和测试集。然后,我们使用`ExponentialSmoothing`类构建了一个Holt-Winters季节性模型,并在训练集上进行拟合。最后,我们使用拟合好的模型对测试集进行预测,并将预测结果和实际值绘制在同一张图上进行比较。
阅读全文