Scipy Leastsq 可选输出变量 (Mesg)

2 投票
1 回答
1695 浏览
提问于 2025-04-16 22:55

SciPy的文档中关于LeastSq的内容可以在这里找到。文档提到,ier是一个整数标志。如果它的值是1、2、3或4,说明找到了答案。否则,说明没有找到答案。不管怎样,另一个可选的输出变量‘mesg’会提供更多的信息。

但是我该怎么获取这个可选变量mesg呢?

x,ier=leastsq(residuals, plsq, args=(x_vals, y_vals))只给我返回了两个值,而

x,mesg,ier=leastsq(residuals, plsq, args=(x_vals, y_vals))在那行代码上却给出了错误信息ValueError: need more than 2 values to unpack

1 个回答

3

使用 full_output 这个参数:

import scipy.optimize as optimize
p,cov,infodict,mesg,ier = optimize.leastsq(
    residuals,p_guess,args=(x,y),full_output=True)

撰写回答