2017-04-14 2 views
2

Ich habe versucht, scipy.stats.genextreme zu verwenden, um meine Daten an die verallgemeinerte Extremwertverteilung anzupassen. Ich habe alle Methoden ausprobiert, die ich finden konnte, aber ich weiß nicht, warum es nicht zu den Daten passt.Anpassen von Daten an eine verallgemeinerte Extremwertverteilung

Ich habe versucht, diese beiden Methoden:

import numpy as np 
from matplotlib import pyplot as plt 
from scipy.stats import genextreme as gev 

dataN = [0.0, 0.0, 0.122194513716, 0.224438902743, 0.239401496259, 0.152119700748, 
     0.127182044888, 0.069825436409, 0.0299251870324, 0.0199501246883, 0.00997506234414, 
     0.00498753117207, 0.0] 

t = np.linspace(1,13,13) 
fit = gev.fit(dataN,loc=3) 
pdf = gev.pdf(t, *fit) 
plt.plot(t, pdf) 
plt.plot(t, dataN, "o") 
print(fit) 

sowie

popt, pcov = curve_fit(gev.pdf,t, dataN) 
plt.plot(t,gev.pdf(*popt),'r-') 

This is the result I got for the first one

Die zweite Methode führte in diesem

" ValueError: Unable to determine number of fit parameters." 

Dank Für jede Hilfe, die Sie mir geben können!

Antwort