对于时间序列预测,常见的方法是使用ARIMA模型。下面是一个简单的Python代码示例,演示如何使用ARIMA模型预测时间序列。

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', header=None)
# 将数据转换为时间序列
data_ts = pd.Series(data[1].values, index=pd.to_datetime(data[0], format='%Y-%m-%d'))

# 划分训练集和测试集
train_size = int(len(data_ts) * 0.8)
train_data = data_ts[:train_size]
test_data = data_ts[train_size:]

# 训练ARIMA模型并进行预测
model = ARIMA(train_data, order=(1, 1, 1))
model_fit = model.fit(disp=0)
predictions = model_fit.forecast(steps=len(test_data))[0]

# 评估预测结果
mse = np.mean((test_data - predictions) ** 2)
rmse = np.sqrt(mse)
print('RMSE: %.3f' % rmse)

# 绘制预测结果和实际结果的比较图
plt.plot(test_data.index, test_data.values, label='Actual')
plt.plot(test_data.index, predictions, label='Predicted')
plt.legend()
plt.show()

在这个代码示例中,我们首先读取了数据,并将其转换为时间序列。然后,我们将数据分为训练集和测试集。接下来,我们使用ARIMA模型训练了一个模型,并使用该模型对测试集进行了预测。最后,我们评估了预测结果,并绘制了预测结果和实际结果的比较图。

时间序列预测代码

原文地址: https://www.cveoy.top/t/topic/vC3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录