首页 > 解决方案 > 安装后无法导入 scikit-learn

问题描述

我正在尝试scikit-learn在 python 中使用该库,但我完全无法将它导入到我的 python 项目中。我已经关注了我可以在网上找到的大部分内容,但我几乎不知道如何解决这个问题。

我创建了一个新的 python 环境,我尝试简单地使用pip install scipypip install scikit-learn但我无法成功导入 scipy 或 scikit-learn。使用windows 二进制文件,我能够scipy正常工作,但是scikit-learn二进制文件继续给我一个错误。错误如下所示:

>>> import sklearn
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\sklearn\__init__.py", line 76, in <module>
    from .base import clone
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\sklearn\base.py", line 16, in <module>
    from .utils import _IS_32BIT
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\sklearn\utils\__init__.py", line 20, in <module>
    from .validation import (as_float_array,
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\sklearn\utils\validation.py", line 21, in <module>
    from .fixes import _object_dtype_isnan
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\sklearn\utils\fixes.py", line 18, in <module>
    from scipy.sparse.linalg import lsqr as sparse_lsqr  # noqa
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\scipy\sparse\linalg\__init__.py", line 113, in <module>
    from .isolve import *
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\scipy\sparse\linalg\isolve\__init__.py", line 6, in <module>
    from .iterative import *
  File "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\lib\site-packages\scipy\sparse\linalg\isolve\iterative.py", line 10, in <module>
    from . import _iterative
ImportError: DLL load failed: The specified module could not be found.

在scikit-learn binaries上方,它说它需要该numpy+mlk模块。我尝试使用 pip 卸载numpy并重新安装numpy+mlk二进制文件,但是一旦这样做,我什至无法导入 numpy. 它给了我一个带有链接的长错误消息:

Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.

We have compiled some common reasons and troubleshooting tips at:

    https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:

  * The Python version is: Python3.7 from "C:\Users\AdamRice\Documents\DataProcessingServer\scipyContainer\Scripts\python.exe"
  * The NumPy version is: "1.19.2"

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.

Original error was: DLL load failed: The specified module could not be found.

我似乎也无法解决这个问题......网站上给出的大多数故障排除策略都不适用于我,而且那些没有帮助的策略。我正在 Windows 10 中使用 Python 3.7.9。非常感谢!

标签: pythonwindowsnumpyscikit-learnscipy

解决方案


弄清楚了!@yoyoyo 通过建议conda环境帮助了我。Conda 带有scipyscikit-learnscikit-image所有预安装的。使用 conda 安装和导入我需要的任何模块都不会让人头疼。


推荐阅读