0
我要解决的ODR
功能的特定点,到目前为止我用:Scipy ODR与fsolve不兼容?
from scipy.odr import ODR, Model, RealData
from scipy.optimize import fsolve
import numpy as np
me = np.array([1, 2, 3, 4, 5])
my = np.array([6, 7, 8, 9, 10])
def func(beta, x):
y = beta[0]+beta[1]*x+beta[2]*x**3
return y
modata = RealData(me, my)
model = Model(func)
odr = ODR(modata, model, [0,0,0])
odr.set_job(fit_type=0)
output = odr.run()
mam = fsolve(func, 5, args=(output.beta))
我得到:
IndexError: index 1 is out of bounds for axis 0 with size 1
我想这是因为beta
作为函数内的指标。
我试着重新定义func
以获得多个变量作为beta
,但我不能让ODR
工作,当我这样做。
有没有办法做到这一点?
哦,DOI。感谢那。我还有一些关于我试图使用它的问题,但我会为此发布另一个问题。 –