解决模型预测样件显示index error

可视化结果在看前10个样本时Ok
但在预测11-20个样本时完全不匹配,并index错误
index error
预测结果显示第10到第19需要更改plot_images_labels_prediction
即title=str(i)+’,’+label_dict[labels[idx+10]]
因为labels的下标是从原数据里0,1,2.。。。
而prediction的下标是从prediction_result里0,1,2.。。。
(* ̄︶ ̄)
labels下标修正

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ARIMA模型是一种时间序列预测模型,可以用于预测气温等时间序列数据。下面是使用Python实现ARIMA模型预测气温的示例代码: ```python import pandas as pd import numpy as np import matplotlib.pyplot as plt from statsmodels.tsa.arima_model import ARIMA from sklearn.metrics import mean_squared_error # 读取气温数据 temp_data = pd.read_csv("temp.csv", index_col="date") temp_data.index = pd.to_datetime(temp_data.index) temp_data = temp_data.resample("D").mean().bfill() # 分割训练集和测试集 train_size = int(len(temp_data) * 0.8) train_data, test_data = temp_data[0:train_size], temp_data[train_size:len(temp_data)] # 训练ARIMA模型 history = [x for x in train_data.values] predictions = [] for t in range(len(test_data)): model = ARIMA(history, order=(5,1,0)) model_fit = model.fit(disp=0) output = model_fit.forecast() yhat = output[0] predictions.append(yhat) obs = test_data.values[t] history.append(obs) print('predicted=%f, expected=%f' % (yhat, obs)) # 计算均方根误差 rmse = np.sqrt(mean_squared_error(test_data, predictions)) print('Test RMSE: %.3f' % rmse) # 绘制预测结果和真实值 plt.plot(test_data) plt.plot(predictions, color='red') plt.show() ``` 在示例代码中,我们首先读取气温数据,然后将数据分割为训练集和测试集。接着,使用ARIMA模型对训练集进行训练,并且在测试集上进行预测。最后,计算预测结果和真实值之间的均方根误差,并且绘制预测结果和真实值的对比图。 需要注意的是,ARIMA模型对于时间序列数据的平稳性要求比较严格,如果数据不平稳,需要进行差分处理或者对数处理等方法来降低数据的非平稳性。此外,ARIMA模型还有一些超参数需要调整,例如p、d和q等,需要根据具体问题进行调参。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值