2015-06-07 5 views
5

Nachdem dieses Histogramm mit,Finden Sie die beste Fitparameter Python

enter image description here

Ich mag wäre es mit einer Chi-Quadrat-Verteilung passen, der pdf ist:

enter image description here

wo beta ist variabel, d1 und beta_zero sind 2 Parameter.

Meine Frage ist: Wie findet man die besten Fit-Parameter mit dem Histogramm mit Python?

Update: Ich weiß, dass ich curve_fit in scipy.optimize verwenden muss. Meine xdata ist matrix_beta, die in Form einer Matrix und deren Elemente Betas sind. Dann definiere ich eine Funktion func(beta,beta_zero,d1) wie in der Formel. Wie gehe ich dann mit ydata vor?

+0

Ehrlich sehen können, haben Sie alles, was Sie benötigen könnten, aber sie standardmäßig machen: 'def Histogramm (etwas, ein anderes, etwas anderes = Wahr) '... Diese Art von Zeug, damit du dich auf Standardwerte verlassen kannst, wenn du nichts brauchst. – Zizouz212

Antwort

1

können Sie zum Beispiel Paket scipy verwenden, wie folgt aus:

import numpy,math 
import scipy.optimize as optimization import 
matplotlib.pyplot as plt 
xdata = numpy.array([0.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5])#your x coordinate 
ydata = numpy.array([25.,40.,22.,12.,8.,3.,1.,1.,0.0,0.0])#your y coordinates 
x0 = numpy.array([0.0, 0.0]) 
sigma = numpy.array([1.0,1.0,1.0,1.0,1.0,1.0])#your errors, e.g. sqrt() 
def func(d1, Bo): 
    return d1*Bo #definition of your function 
print optimization.curve_fit(func, xdata, ydata, x0, sigma) #result 

Sie hier weitere Informationen http://python4mpia.github.io/fitting_data/least-squares-fitting.html

Verwandte Themen