我正在尝试从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.
答案 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是否存在于PATH
或PYTHONPATH
内的某个位置。< / 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这样的版本进行升级。 希望这会有所帮助。另外,请记住在更新后重置环境。