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

读取RFMiD训练标签csv后访问ID列报KeyError: 'ID'错误如何解决?

报错原因
  • 核心触发原因是你读取到的DataFrame中不存在名为ID的列,pandas在索引不存在的列名时就会抛出KeyError。最常见的诱因是你设置了错误的分隔符:RFMiD官方提供的标签CSV文件默认是逗号分隔,你指定了制表符\t作为分隔符后,pandas会把每行的所有字段全部合并到同一个列中,自然无法拆分出单独的ID列。
  • 小概率场景为CSV的列名存在前后空格(比如实际列名为ID而非ID),或是数据集标签的ID列使用了其他命名规则,比如Image_ID、img_id等。
解决方法
  1. 首先修正CSV读取参数,删除错误的分隔符设置,使用pandas默认的逗号分隔规则读取文件:
df4 = pd.read_csv('../input/riadd-dataset/RFMiD_Training_Labels.csv')
  1. 读取完成后先执行print(df4.columns)输出所有列名,确认列名情况:
  • 如果列名存在多余的前后空格,先批量去除所有列名的空格:
df4.columns = df4.columns.str.strip()
  • 如果ID列实际使用其他命名,将后续代码中的列名替换为实际的列名即可。
  1. 确认列名正确后再执行路径拼接代码:
df4['ID']="Training/"+df4['ID'].astype(str)+'.png'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 06:27:03