导入scipy.stats时,获取'ImportError: DLL load failed: The specified procedure could not be found'



我无法导入scipy.stats并得到以下错误,但不知何故

import scipy as sp

仍然正常工作。

其他库,如numpy,熊猫可以毫无问题地导入。

我尝试在 Anaconda 中重新安装 scipy 1.2.1,降级到 scipy 1.2.0,但我仍然找不到 ImportError 指定的程序。

我使用 python 3.7.3 和 scipy 1.2.1,两者都由 Anaconda 在原子文本编辑器中安装。

---------------------------------------------------------------------------
    ImportError                               Traceback (most recent call last)
<ipython-input-1-dcc8e03bb4b3> in <module>
----> 1 from scipy import stats
~Anaconda3libsite-packagesscipystats__init__.py in <module>
    365 from __future__ import division, print_function, absolute_import
    366 
--> 367 from .stats import *
    368 from .distributions import *
    369 from .morestats import *
~Anaconda3libsite-packagesscipystatsstats.py in <module>
    171 from scipy._lib._util import _lazywhere
    172 import scipy.special as special
--> 173 from . import distributions
    174 from . import mstats_basic
    175 from ._stats_mstats_common import _find_repeats, linregress, theilslopes, siegelslopes
~Anaconda3libsite-packagesscipystatsdistributions.py in <module>
      8 from __future__ import division, print_function, absolute_import
      9 
---> 10 from ._distn_infrastructure import (entropy, rv_discrete, rv_continuous,
     11                                     rv_frozen)
     12 
~Anaconda3libsite-packagesscipystats_distn_infrastructure.py in <module>
     22 
     23 # for root finding for discrete distribution ppf, and max likelihood estimation
---> 24 from scipy import optimize
     25 
     26 # for functions of continuous distributions (e.g. moments, entropy, cdf)
~Anaconda3libsite-packagesscipyoptimize__init__.py in <module>
    385 
    386 from .optimize import *
--> 387 from ._minimize import *
    388 from ._root import *
    389 from ._root_scalar import *
~Anaconda3libsite-packagesscipyoptimize_minimize.py in <module>
     28 from ._trustregion_krylov import _minimize_trust_krylov
     29 from ._trustregion_exact import _minimize_trustregion_exact
---> 30 from ._trustregion_constr import _minimize_trustregion_constr
     31 
     32 # constrained minimization
~Anaconda3libsite-packagesscipyoptimize_trustregion_constr__init__.py in <module>
      2 
      3 
----> 4 from .minimize_trustregion_constr import _minimize_trustregion_constr
      5 
      6 __all__ = ['_minimize_trustregion_constr']
~Anaconda3libsite-packagesscipyoptimize_trustregion_constrminimize_trustregion_constr.py in <module>
      2 import time
      3 import numpy as np
----> 4 from scipy.sparse.linalg import LinearOperator
      5 from .._differentiable_functions import VectorFunction
      6 from .._constraints import (
~Anaconda3libsite-packagesscipysparselinalg__init__.py in <module>
    115 from .dsolve import *
    116 from .interface import *
--> 117 from .eigen import *
    118 from .matfuncs import *
    119 from ._onenormest import *
~Anaconda3libsite-packagesscipysparselinalgeigen__init__.py in <module>
      9 from __future__ import division, print_function, absolute_import
     10 
---> 11 from .arpack import *
     12 from .lobpcg import *
     13 
~Anaconda3libsite-packagesscipysparselinalgeigenarpack__init__.py in <module>
     20 from __future__ import division, print_function, absolute_import
     21 
---> 22 from .arpack import *
~Anaconda3libsite-packagesscipysparselinalgeigenarpackarpack.py in <module>
     43 __all__ = ['eigs', 'eigsh', 'svds', 'ArpackError', 'ArpackNoConvergence']
     44 
---> 45 from . import _arpack
     46 import numpy as np
     47 import warnings
ImportError: DLL load failed: The specified procedure could not be foundใ

在谷歌搜索了一段时间后,我遇到了这个:https://github.com/conda/conda/issues/6396

因为我绝望了,所以我尝试了。它奏效了!我通过移除蟒蛇安装的 scipy 解决了它,然后使用预装在 Python 中的 pip 来代替安装 Scipy。

它以某种方式解决了问题。将把这个答案留给任何不幸的灵魂。

我在 conda 存储库中遇到了类似的 numpy 和 scipy 问题。它发生在加载预编译的库时。就我而言,它们是lapack_lite和_umath_linalg。如果我卸载 conda 版本并使用 pip 版本,它可以正常工作:

$ conda remove --force numpy scipy
$ pip install numpy scipy

然后它可以工作,所以希望这个过程对你有用,但是每个需要这两个的新包都会再次安装 conda 版本,因为存储库结束时附加了补丁版本,除非您想手动安装所有依赖项并避免这两个。

我遇到了同样的问题,只是运行pip instll scipy -U更新 Scipy

相关内容

最新更新