You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas运行代码报KeyError: Predictions not in index如何解决

错误原因

这是列名拼写不匹配导致的pandas索引错误,核心问题是两处的列名写法不一致:

  • 给valid表新增预测值列时,你用的列名是Prediction(单数形式,末尾没有s)
  • 后续绘图取列、编写图例标签时,用的列名是Predictions(复数形式,末尾多了s)
    pandas对列名做精确字符串匹配,找不到你传入的Predictions列时,就会抛出这个KeyError。
修复方法

把两处的列名统一即可,两种改法任选一种就能解决问题:

  • 改法1:统一使用单数列名
    保持新增列的写法不变,把绘图、图例部分的列名改成和新增列一致的单数形式,修改后的对应代码段:
    valid['Prediction'] = predictions
    # 中间标题、坐标轴配置的代码无需改动
    plt.plot(valid[['Close', 'Prediction']])
    plt.legend(['Train','Val', 'Prediction'], loc= 'lower right')
    
  • 改法2:统一使用复数列名
    保持后续绘图、图例的写法不变,只需要把新增列的列名改成复数形式即可:
    valid['Predictions'] = predictions
    

实用小提示:后续再遇到类似列找不到的报错,可以先运行print(valid.columns)打印出当前DataFrame里实际存在的所有列名,对照着写就能快速排查拼写、多余空格这类低级错误。

内容的提问来源于stack exchange,提问作者cody

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 15:54:15