SciPy关于LeastSq的文档是here。它声明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
。
答案 0 :(得分:3)
使用full_output参数:
import scipy.optimize as optimize
p,cov,infodict,mesg,ier = optimize.leastsq(
residuals,p_guess,args=(x,y),full_output=True)