DLL加载失败了scipy.optimize?

时间:2014-03-31 04:32:54

标签: python matplotlib scipy

我正在尝试从scipy.optimize上传curve_fit以使指数函数适合我生成的某些数据。我的代码如下:

import matplotlib.pyplot as plt
import numpy as np
from scipy.optimize import curve_fit

当我运行代码时,出现以下错误:

  

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

我在计算机上的Anaconda文件夹中有scipy,我80%确定我安装了它。我该如何解决这个错误? (或者,如果您有更好的方法将指数函数拟合到数据中,我会全力以赴)

谢谢!

编辑:这是完整的错误:

Traceback (most recent call last):
 File "C:\Users\Casey\Documents\Python\Perc_MatPlot3.py", line 10
    from scipy.optimize import curve_fit
  File "C:\Users\Casey\Anaconda\Lib\site-packages\scipy\optimize\__init__.py", line 146
    from .optimize import *
  File "C:\Users\Casey\Anaconda\Lib\site-packages\scipy\optimize\optimize.py", line 35
    from .linesearch import (line_search_BFGS, line_search_wolfe1,
  File "C:\Users\Casey\Anaconda\Lib\site-packages\scipy\optimize\linesearch.py", line 16
    from scipy.optimize import minpack2
ImportError: DLL load failed: The specified module could not be found.

5 个答案:

答案 0 :(得分:18)

我遇到了错误

actionsArray

在使用pip3安装的NumPy使用cgoehlke's "Unofficial Windows Binaries for Python Extension Packages" for SciPy时,请忽略此注释:

  

许多二进制文件依赖于NumPy-1.9 + MKL和......

他们的NumPy提供了缺少的DLL /模块。

答案 1 :(得分:4)

我最近在尝试使用pyplot和scipy时遇到了类似这样的问题。我有Anaconda 2.7,32bit在Windows 7 x64上运行

我在尝试使用curve_fit时遇到了这个确切的错误。我下载了' superpack'来自sourceforge:http://sourceforge.net/projects/scipy/

运行此安装程序修复了错误,并没有影响我的python环境的任何其他部分。

答案 2 :(得分:0)

不确定这是否适合你,因为这个错误可能意味着很多事情......我去过那里......

我只是在10分钟之前在Vista x64机器上全新安装了Miniconda for Python 3.3时出现了同样的错误(也是在加载Scipy优化时)。不知何故,它无法将主要的Python目录添加到Windows PATH(我非常确定我在安装结束时没有取消选中它的框)。

我本周早些时候在一些XP和Win 7机器上做了同样的程序,没有任何问题,所以我有点意外地抓住了我。

如果您的计算机上没有其他Python安装,您可以检查运行'python'(输入win-key + r,或从命令提示符执行)是否有效。如果它不是简单地将主安装目录(python.exe所在的位置)添加到PATH变量。

如果这不起作用,您可以使用Dependency Walker检查错误消息实际上是哪个DLL,并查看该DLL是否存在于PATHPYTHONPATH内的某个位置。< / p>

当使用不同的编译器编译同一DLL的多个版本并且首先找不到所需的版本时,我有相同的DLL error。如果删除版本(它附带的程序)不是一个选项,更改PATH变量的顺序可以帮助。

答案 3 :(得分:0)

这很可能是你安装了32位Python而是64位库,反之亦然。

您需要删除Python并重新安装正确的python。

https://www.python.org/download/

您可以在这里下载Python。

请记住,python库应该是与Python相同的32位或64位。

答案 4 :(得分:0)

我正遭受着完全相同的问题。

from scipy.optimize import minpack2

我重新安装了numpy和MLK,但在Pycharm上仍然出现此错误。我直接将python更新到3.6,现在问题已解决。 在操作过程中,使用

conda install python=3.6

conda update python

告诉我我已经拥有3.5.2,这意味着conda更新无法从3.5更新到3.6,并且应该能够从3.5.1-> 3.5.2这样的版本进行升级。 希望这会有所帮助。另外,请记住在更新后重置环境。