copipe Python | 任意の関数でフィッティングする。

概要

scipyのoptimizeのcurve_fitをインポートすると、curve_fit(ユーザー定義関数, xデータ, yデータ)を使って、任意の関数でフィッティングすることができる。

コード

from scipy.optimize import curve_fit

def funcA(x, a, b):
    y = a*x+b
    return y

xData = [1, 2, 4, 7, 13]
yData = [2, 6, 13, 45, 32]
opt, cov = curve_fit(funcA, xData, yData)
print(opt)

結果

[2.87339056 4.08369099]