You need to enable JavaScript to run this app. 运行KNN步态分类代码报错AttributeError: 'dict' object has no attribute 'data'求助
优惠活动
大模型
产品
解决方案
定价
更多

运行KNN步态分类代码报错AttributeError: 'dict' object has no attribute 'data'求助

错误原因

AttributeError: 'dict' object has no attribute 'data' 报错的核心原因是你手动构造的gait_dt是Python原生字典类型,不支持点语法(.属性名)访问字典键值,只能用字典名['键名']的方式取值,代码里所有对gait_dt用点访问的位置都是错误触发点。

需要修改的代码位置
  • 第一个错误位置:训练集加载循环的append行
    原代码:
    m_knn.gaits.append(GaitData(gait_dt.data[iter], gait_dt.target[iter]))
    
    修改为:
    m_knn.gaits.append(GaitData(gait_dt['data'][iter], gait_dt['target'][iter]))
    
  • 第二个错误位置:测试循环里构造GaitData的参数
    原代码:
    GaitData(gait_dt[iter], target[iter])
    
    修改为:
    GaitData(gait_dt['data'][iter], gait_dt['target'][iter])
    
  • 第三个错误位置:打印真实类别时的target_names访问
    原代码:
    gait_dt.target_names[target[iter]]
    
    修改为:
    gait_dt['target_names'][int(gait_dt['target'][iter])]
    
额外说明

你当前的加权投票逻辑是按照鸢尾花三类分类写的,但你数据集的标签只有正常、异常两类,解决报错后可以自行调整投票逻辑适配二分类场景。

内容的提问来源于stack exchange,提问作者심자연

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 03:36:11