Wie man eine CDF von einem Histogramm in MATLAB
Ich versuche zu erstellen, die Funktion, die ein Histogramm und macht eine CDF von ihm.
Allerdings kann ich nicht verwenden, die cdfplot
- Funktion in Matlab.
Wie würde ich gehen über das tun dies?
Dies führt zu den Eingangs-Histogramm:
x = randn(1000,1);
nbins = 25;
h = histogram(x,nbins)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Der einfachste Weg, um eine kumulative Verteilung von Daten zu generieren, eine empirische CDF. Die
ecdf
kann das direkt tun. Standardmäßig ist diese nicht erforderlich ist, ein erzeugen eines Histogramms für einen Datensatz:Jedoch, wenn Sie möchten, eine niedrigere Auflösung CDF, die Sie verwenden können
histogram
direkt mit der'cdf'
Normalisierung option:Finden Sie vielleicht die
'cumcount'
option auch hilfreich. Finden Sie in der Dokumentation fürecdf
undHistogramm
für details auf, wie zum extrahieren und verwenden Sie die Ausgabe dieser Funktionen.Verwendung von MATLAB ' s Funktion cumsum, nach der Normalisierung des Histogramms.
Der vollständige code:
Ergebnisse mit kleineren nBins (nBins = 8):
histogram
ist der name der Funktion.hist
ist veraltet und für ein paar Jahre jetzt (mit einem ziemlich starken Vorschlag, nicht mehr verwenden).histogram
gibt eine struct, woh.Values
ist äquivalent zu dem, washist
gibt.