我试图用模型y= Ax^2 sin(x)/cos(x)^C + B
找到数据x,y的参数A,B,C
我想从scipy.optimize公司但我错了。
以下是我的尝试:
x=n.array(x)
y=n.array(y)
model=lambda tpl,x :(tpl[0]*x**2 * n.sin(x))/((n.cos(x)**tpl[2]) *tpl[1])
func=model
err=lambda tpl,x,y: func(tpl,x)-y
init=(3.0,8.0,4.0)
param=scipy.optimize.leastsq(err,init[:],args=(x,y))
print(param[o])
其中init是我对参数A,B,C的“第一个猜测”
错误:
^{pr2}$
在我看来,你用
^
而不是**
来求幂。尝试:注意,
^
是python中的按位异或操作。使用**
将事物提升为幂。在相关问题 更多 >
编程相关推荐