You need to enable JavaScript to run this app. 使用KNeighborsClassifier时报错'object is not callable如何解决
优惠活动
大模型
产品
解决方案
定价
更多

使用KNeighborsClassifier时报错'object is not callable如何解决

报错原因

你前两步的实例化、调用fit()方法训练模型的操作均符合规范,报错核心出在第三步的预测写法:

  • KNeighborsClassifier实例化得到的knn是类实例对象,不是可调用的函数/方法。Python中只有实现了__call__魔法方法的对象支持直接加括号执行,sklearn的模型实例默认没有实现该方法,因此直接写knn(xxx)会触发TypeError: 'KNeighborsClassifier' object is not callable类型错误。
解决方案

sklearn所有有监督模型完成拟合后,需要调用对应预测方法生成结果,根据你的需求选择写法即可:

  • 生成分类类别预测结果:调用predict()方法,将原错误代码替换为:
prediction = knn.predict([[2,4,3,1]])
  • 若需要生成样本属于每个类别的概率值,可调用predict_proba()方法:
prediction_proba = knn.predict_proba([[2,4,3,1]])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 01:15:07