首页 > 解决方案 > 加载 scikit-learn KNNImputer 时出错

问题描述

我试图在我的 jupyter 笔记本中加载 KNNImputer,但我遇到了以下错误:-

ImportError: cannot import name 'KNNImputer' from 'sklearn.impute' (C:\Users\karti\anaconda3\lib\site-packages\sklearn\impute.py)

谁能帮我解决这个问题?

标签: pythonscikit-learnknn

解决方案


检查 scikit-learn 版本。在 Jupyter 中执行

import sklearn
print(sklearn.__version__)

KNNImputer 是在 0.22 版本中引入的。因此,如果您有任何低于该版本的版本,您将无法导入。

鉴于您正在使用 conda,从您的错误开始,我将执行以下操作:

# Update conda, create environment named ml and activate it
conda update --name base conda -- yes && conda create -- name ml python=3.7 scikit-learn '>=0.22.0' pandas jupyterlab --yes && conda activate ml

# run Jupyter Lab
jupyter lab

这应该为您提供所需的环境。如果您想添加更多软件包,只需执行

conda install -n ml package_name

在启动 Jupyter Lab 或使用带有正确包的 Python 之前,您必须处于 ml 环境中。

conda activate ml
python -c "import sklearn;print(sklearn.__version__)"

推荐阅读