写一个ARIMA代码模板
时间: 2024-05-07 22:18:58 浏览: 16
好的,以下是一个ARIMA模型的代码模板:
```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', index_col=0, parse_dates=True)
# 拆分数据
train_data = data.iloc[:len(data)-12]
test_data = data.iloc[len(data)-12:]
# 拟合ARIMA模型
model = ARIMA(train_data, order=(p, d, q))
model_fit = model.fit(disp=0)
# 预测
predict_data = model_fit.forecast(steps=12)[0]
# 评估模型
mse = np.mean((predict_data - test_data)**2)
rmse = np.sqrt(mse)
mae = np.mean(np.abs(predict_data - test_data))
print('MSE:', mse)
print('RMSE:', rmse)
print('MAE:', mae)
# 可视化结果
plt.plot(train_data, label='Train')
plt.plot(test_data, label='Test')
plt.plot(test_data.index, predict_data, label='Predict')
plt.legend()
plt.show()
```
其中,p、d和q是ARIMA模型的参数,需要根据实际情况进行调整。train_data和test_data是拆分后的训练集和测试集,data.csv是原始数据文件。ARIMA模型的训练和预测都是通过ARIMA类的fit和forecast方法实现的。最后,通过可视化来展示训练集、测试集和预测结果的走势。