[英]Scipy optimize.fmin wrong return values
我目前正在使用scipy.optimize.fmin()
函数,但遇到了问题。 当我查看文档时,它说:
返回值:
xopt : ndarray
Parameter that minimizes function.
fopt : float
Value of function at minimum: fopt = func(xopt).
iter : int
Number of iterations performed.
funcalls : int
Number of function calls made.
warnflag : int
1 : Maximum number of function evaluations made. 2 : Maximum number of iterations reached.
allvecs : list
Solution at each iteration.
但是当我尝试这个:
res, min = opt.fmin(optim, self._params, (param_optim, self._paramsIni, Qmes, critere_efficacite, self, codeBV, interval), maxiter=5)
我收到此错误:
ValueError: too many values to unpack (expected 2)
有人知道为什么吗? 我的意思是文档错误(我猜没有)还是我做错了什么? 我正在使用scipy 0.19和Python34
提前致谢。
更精确一点:该函数返回6个值的元组(
full_output:bool,可选如果需要fopt和warnflag输出,则设置为True。
)或一个(如果保留为False
,则为默认值)。 如果只希望完整输出的第二个值,建议您按照注释中的建议设置full_output=True
和pattern-match。 另外,您可以将结果存储在一个元组中res = opt.fmin(<your arguments>)
,然后访问r=res[0] min=res[1]
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.