【问题标题】:Cannot load KNNImputer even after updating sklearn to 0.23.2即使将 sklearn 更新到 0.23.2 也无法加载 KNNImputer
【发布时间】:2021-01-28 23:52:17
【问题描述】:

当我尝试在 Jupyter Notebook 上加载 from sklearn.impute import KNNImputer 时,它给了我以下错误。

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

我已将 sklearn 更新到最新版本。

(base) C:\Users\aura->pip install -U scikit-learn
Requirement already up-to-date: scikit-learn in c:\users\aura-\anaconda3\lib\site-packages (0.23.2)

但是当我再次查看 Jupyter Notebook import sklearn;print(sklearn.__version__) 时,它仍然显示 0.21.3

为什么更新没有反映在 Jupyter Notebook 上?

【问题讨论】:

  • 还有其他python目录吗?(不是anaconda)

标签: python scikit-learn jupyter-notebook


【解决方案1】:

您的包路径似乎很混乱。您提供的错误在以下位置搜索包:

\Anaconda3\lib\site-packages

但是你更新的 sci-kit 学习在:

\anaconda3\lib\site-packages

当您安装 Anaconda 时,它会创建 anaconda3 文件夹。您是否创建了 Anaconda3 文件夹?

无论如何,无论您在哪里运行 Jupyter Notebook,Python 都会在不需要的文件夹中搜索包。查看 Stack Exchange 上的 answer 了解如何编辑 PYTHONPATH。我建议删除 Anaconda3 的路径,并在 PYTHONPATH 中添加 anaconda3 的路径。

如果您愿意,可以尝试其他方法:

或者,使用 conda 创建一个虚拟环境,使用conda createconda activate 进入环境。在虚拟环境中,如果你运行 Jupyter,那么 conda 应该将 Python 引导到正确的路径 [即\path\to\anaconda3]。这是 conda 的主要功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-28
    • 2013-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-30
    • 1970-01-01
    相关资源
    最近更新 更多