Оценки функций curve_fit и ODR - PullRequest
       25

Оценки функций curve_fit и ODR

1 голос
/ 10 апреля 2020

Я пытаюсь подогнать функцию к набору переменных, используя функцию ODR. Задание не кажется таким уж сложным, но сама идея оценки действительно смущает меня. Я прочитал описание функции и все ее входные данные, но я не совсем понимаю значение оценки. Я хотел, чтобы он вычислялся каким-то образом, вместо того, чтобы самому угадывать его, но функции, которые я пробовал, linregress (можно использовать только для линейных функций) и curve_fit (также требуется оценщик, но принимает значение как 1, если не указано) не помогли. Что означает оценщик? Как мне найти один? Как мне сделать функцию ODR максимально точной? Где я могу найти такую ​​информацию? Спасибо.

РЕДАКТИРОВАТЬ: вот кусок кода

def fun(kier, arg):
    '''
    Function to fit
    :param kier: list of parameters
    :param arg: argument of the function fun
    :return y: value of function in x
    '''

    y =kier[0]*arg +1 #+kier[1]
    return y

dane = RealData(x=zx, y=zy, sx=dx, sy=dy)
model = Model(fun)
#kier,cross,none,none,none=linregress(zx_mean,zy_mean) #this is a method used to estimate the parameters, replaced by curve_fit.
popt, pcov = curve_fit(fun, zx, zy)
on = ODR(dane, model,beta0=[popt[0]])
output = on.run()
...