Использование curve_fit с absolute_sigma = True - PullRequest
0 голосов
/ 18 июня 2020

Я просто тестировал scipy.optimize.curve_fit с абсолютной сигмой, и мне просто интересно, почему есть разница в результатах? я что-то упускаю? преобразование года в абсолютные значения должно дать те же результаты, не так ли?

y=[1,2.5,3,4]
x=[1,2,3,4]
yerr=[0.1,0.1,0.1,0.1]

def func(x, a, b):
    return a*x+b

popt, pcov = curve_fit(func, x, y,sigma=yerr,absolute_sigma=False)

print(np.sqrt(np.diag(pcov)))
print(popt)

yerr=[0.1,0.25,0.3,0.4]

popt, pcov = curve_fit(func, x, y,sigma=yerr,absolute_sigma=True)

print(np.sqrt(np.diag(pcov)))
print(popt)


-
-
[0.13228756 0.36228442]
[0.95 0.25]
[0.10405623 0.17191118]
[ 1.0496166  -0.01082544]
...