Pythonで最小二乗を使うときはサクッと以下のように行おう。
import numpy as np from scipy.optimize import leastsq def func(c, x): return c[0]*x**2 + c[1]*x + c[2] def errfunc(c, x, t): return t - func(c, x) #observed data and initial guess x = np.linspace(-5, 5, 100) t = 4*x**2 + 1 c0 = [0, 0, 0] leastsq(errfunc, c0, args=(x, t))
0 件のコメント:
コメントを投稿