尝试导入sklearn模块时出错:ImportError:DLL加载失败:找不到指定的模块

Tah*_*abi 5 python dll machine-learning sklearn-pandas

我尝试为机器学习项目进行以下导入:

from sklearn import preprocessing, cross_validation, svm
from sklearn.linear_model import LinearRegression
Run Code Online (Sandbox Code Playgroud)

我收到此错误消息:

Traceback (most recent call last):
  File "C:/Users/Abdelhalim/PycharmProjects/ML/stock pricing.py", line 4, in <module>
    from sklearn import preprocessing, cross_validation, svm
  File "C:\Python27\lib\site-packages\sklearn\__init__.py", line 57, in <module>
    from .base import clone
  File "C:\Python27\lib\site-packages\sklearn\base.py", line 12, in <module>
    from .utils.fixes import signature
  File "C:\Python27\lib\site-packages\sklearn\utils\__init__.py", line 11, in <module>
    from .validation import (as_float_array,
  File "C:\Python27\lib\site-packages\sklearn\utils\validation.py", line 18, in <module>
    from ..utils.fixes import signature
  File "C:\Python27\lib\site-packages\sklearn\utils\fixes.py", line 291, in <module>
    from scipy.sparse.linalg import lsqr as sparse_lsqr
  File "C:\Python27\lib\site-packages\scipy\sparse\linalg\__init__.py", line 112, in <module>
    from .isolve import *
  File "C:\Python27\lib\site-packages\scipy\sparse\linalg\isolve\__init__.py", line 6, in <module>
    from .iterative import *
  File "C:\Python27\lib\site-packages\scipy\sparse\linalg\isolve\iterative.py", line 7, in <module>
    from . import _iterative
ImportError: DLL load failed: The specified module could not be found.
Run Code Online (Sandbox Code Playgroud)

请帮助我尝试一切,但无济于事。我也尝试了以下解决方案: ImportError:DLL加载失败:模块可升级

ImportError:DLL加载失败:找不到指定的模块

cha*_*ggy 11

这条线指向科学。

from scipy.sparse.linalg import lsqr as sparse_lsqr

你可以试试:

pip uninstall scipy

pip install scipy

请享用!


小智 3

您应该打开“C:\Python27\lib\site-packages\sklearn\utils\fixes.py”,然后编辑内容。您应该进行两项具体更改:

首先,将https://github.com/scikit-learn/scikit-learn/blob/74a9756fa784d1f22873ad23c8b4948c6e290108/sklearn/utils/fixes.py的内容复制并粘贴到文件“C:\Python27\lib\site-包\sklearn\utils\fixes.py”。

其次,将 if 行替换np_version < (1, 12, 0):if np_version < (1, 12):

更多背景信息和详细信息请参见用户DSM的精彩回答。