私はまともな量を探していて、まだ私の質問に明確な解決策を見つけていません。現在、Gaussianフィッティングのチュートリアルを見るときに表示されるデータの典型的なセットである、x軸に沿った任意のデータにガウス分布をフィットさせることができます。今私はx軸の上にある量を上げるデータを持っているので、ガウスの近似をx軸に当てることはできません。私の解決策は、+ y0の定数を追加してガウス関数を定義することです。私はちょうどこれをコード化する方法を知らない!現在私は次のことを持っています。ヘルプPython y = 0でx軸に沿っていないデータにガウス分布を当てはめる
def gaus(x,a,x0,sigma,y0):
return y0+a*exp(-(x-x0)**2/(2*sigma**2))
しかし、この後どのように私は、パラメータの推測と、このようなを変更しない:私はしたいと思い
n = len(xcut)
mean = center
sigma = sum(ycut*(xcut-mean)**2)/n
def gaus(x,a,x0,sigma):
return a*exp(-(x-x0)**2/(2*sigma**2))
popt,pcov = curve_fit(gaus,xcut,ycut,p0=[45,mean,sigma])
はとても機能があるのですか?振幅と同様に、p0の中に私の推測を入力しますか?
編集:私はy0を私が推測できる一定の値に設定することができ、フィット感は非常に良好です。しかし、これは、私が各データセットについて毎回良い推測をする必要があります。どちらが回避策ですか、痛みです!
ご協力いただきありがとうございます。