# 导入必要的库
import pandas as pd
import numpy as np
from statsmodels.tsa.arima.model import ARIMA
import matplotlib.pyplot as plt
# 创建示例时间序列数据
data = {
'date': pd.date_range(start='2023-01-01', periods=100, freq='D'),
'value': np.random.randn(100).cumsum()
}
df = pd.DataFrame(data)
df.set_index('date', inplace=True)
# 定义ARIMA模型
model = ARIMA(df['value'], order=(5, 1, 0)) # (p, d, q) 参数分别为自回归项、差分项和移动平均项的阶数
# 拟合模型
model_fit = model.fit()
# 打印模型摘要
print(model_fit.summary())
# 进行预测
forecast = model_fit.forecast(steps=10) # 预测未来10个时间点的数据
# 绘制原始数据和预测结果
plt.figure(figsize=(10, 6))
plt.plot(df.index, df['value'], label='Original')
plt.plot(pd.date_range(start=df.index[-1], periods=11, freq='D')[1:], forecast, label='Forecast', color='red')
plt.legend()
plt.show()
pandas
、numpy
、statsmodels
中的 ARIMA
模型以及 matplotlib
用于绘图。ARIMA
类定义模型,参数 (5, 1, 0)
分别表示自回归项(AR)、差分项(I)和移动平均项(MA)的阶数。fit()
方法对模型进行训练。forecast()
方法预测未来10个时间点的数据。上一篇:python scrapy爬虫
下一篇:python图
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站