从sklearn.neighbors导入KNeihgborsClassifier报ImportError如何解决
问题诱因
- 首要原因是类名拼写错误:你代码中使用的
KNeihgborsClassifier存在字母顺序错误,scikit-learn提供的对应类正确拼写为KNeighborsClassifier,你误将拼写中的gh顺序写反为hg,导致导入时无法匹配到对应类。 - 次要原因为scikit-learn版本不兼容:若你使用的scikit-learn版本低于0.18,该类命名存在差异,或版本过旧存在导出异常。
- 特殊情况为安装包损坏:scikit-learn安装过程中出现文件丢失、损坏,导致
sklearn.neighbors的初始化文件无法正常导出对应类。
解决方法
- 修正拼写错误:将导入语句替换为正确写法即可解决90%以上的该类问题:
from sklearn.neighbors import KNeighborsClassifier
- 版本升级:若修正拼写后仍报错,先查看当前scikit-learn版本:
pip show scikit-learn
若版本低于0.22,可执行命令升级到稳定版:pip install --upgrade scikit-learn
Anaconda环境可使用以下命令升级:conda update scikit-learn - 重新安装包:如果升级后问题仍存在,可卸载后重新安装完整的scikit-learn包:
pip uninstall scikit-learn pip install scikit-learn
内容的提问来源于stack exchange,提问作者chemingui mouna
相关产品推荐
相关产品推荐

