2016-04-30 11 views
0

Daten: 34,46,47,48,52,53,55,56,56,56,57,58,59,59,68R: Verwandeln Sie ein [KDE] Dichtediagramm in ein cdf?

Density Plot

enter image description here

ECDF

enter image description here

Was Ich mag würde tun, ist die abgeleitete Dichteplot nehmen und es in eine kumulative Verteilungsfrequenz drehen abzuleiten% 's aus. Und umgekehrt. Meine Hoffnung ist es, die Kerndichte-Schätzung speziell zu verwenden, um eine geglättete kumulative Verteilungsfunktion abzuleiten. Ich möchte mich nicht auf die Rohdatenpunkte verlassen, um eine ECDF zu machen, sondern benutze die KDE, um eine CDF zu machen.

Edit:

ich sehe, gibt es ein KernelSmoothing.CDF, könnte dies die Lösung sein? Wenn es so ist, habe ich keine Ahnung, wie ich es bisher umsetzen soll.

Mathworks hat ein Beispiel von dem, was ich versuche zu tun, Umwandlung von einer ECDF zu einer KECDF unter "Berechnen und Plotten der geschätzten cdf ausgewertet zu einem bestimmten Satz von Werten."

http://www.mathworks.com/help/stats/examples/nonparametric-estimates-of-cumulative-distribution-functions-and-their-inverses.html?requestedDomain=www.mathworks.com

enter image description here

obwohl ich die Umsetzung denken ziemlich schlampig ist. Eine polynomische Regressionslinie wäre besser geeignet.

+0

Sie einen Blick auf die Kaplan-Meier-Überlebensfunktion im Paket ‚Überleben‘ haben kann. Dies ist ein nicht-parametrischer Schätzer für die Überlebensfunktion und Überleben = 1-CDF – user118591

Antwort

0
library("DiagTest3Grp", lib.loc='~/R/win-library/3.2") 

data <- c(34,46,47,48,52,53,55,56,56,56,57,58,59,59,68) 
bw <- BW.ref(data) 
x0 <- seq(0, 100, .1) 
KS.cdfvec <- Vectorize(KernelSmoothing.cdf, vectorize.args = "c0") 
x0.cdf <- KS.cdfvec(xx = data, c0 = x0, bw = bw) 
plot(x0, x0.cdf, type = "l") 

Ich muss noch herausfinden, wie y gegeben x abzuleiten, aber das war eine große Hilfe

Verwandte Themen