最小二乗法による線形回帰
Scipyを使った最小二乗法による線形回帰
datasetは[(second,value),…,(second,value)]
な形式
seconds =[] works = [] for datum in dataset: seconds.append(datum[0]) works.append(datum[1]) #1次式でフィッティングする.フィッティングしたい式を書く fitfunc = lambda p, x: p[0] * x + p[1] errfunc = lambda p,x,y: fitfunc(p,x)-y #初期値.なんでも良い. p0 = [0,0] self._p1,success = scipy.optimize.leastsq(errfunc,p0,args=(array(seconds),array(works)))
fitfunc(self._p1,x)が得られた式.