私は多くのパラメータを持つ関数を持っています。この関数をデータセットに適合させたいのですが、1つのパラメータだけを使用して、残りのパラメータを自分で供給したいと考えています。私は、フィッティングだけa
のために行われ、パラメータb
は、ループ変数の値をとることにしたい。この中pythonで多くのパラメータを持つ関数の1つのパラメータのみをフィッティングする
def func(x,a,b):
return a*x*x + b
for b in xrange(10):
popt,pcov = curve_fit(func,x1,x2)
:ここでは一例です。これはどうすればできますか?
あなたはhttp://en.wikipedia.org/wiki/Curve_fittingを参照してください。 – ninjagecko
カーブを「フィット」させることを意味する無限の方法と、各方法について、それを実装する多くの方法があります。あなたが望むカーブフィッティングのタイプは、しばしば、あなたが解決しようとしている問題に依存しています。あなたが気にしないと仮定すると、簡単な方法の1つは最小二乗と呼ばれ、誤差の2乗の和を最小にします。ここでは、減衰された最小二乗法の解を計算する既成のライブラリがあります:http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.curve_fit.html質問は不完全です。私は、カーブフィッティングについての特定の質問を閉じて再開することを提案します。 – ninjagecko
私はアルゴリズムについて気にしません、私はscipy.optimizeからcurve_fitを使用します。私が理解できないことは、パラメータの1つが自分の価値を取り、どこのパラメータが適合すべきかをどこで指定するべきかということです。 – lovespeed