Hier einige praktikable Beispiel für Daten, die ich zeichnen wollen nicht erreicht:erstellt eine verschachtelte CDF, die nicht 1
set.seed(123)
x <- rweibull(n = 2000, shape = 2, scale = 10)
x <- round(x, digits = 0)
x <- sort(x, decreasing = FALSE)
y <- c(rep(0.1, times = 500),rep(0.25, times = 500),rep(0.4, times = 500),rep(0.85, times = 500))
z <- rbinom(n=2000, size=1, prob=y)
df1 <- data.frame(x,z)
ich die overal fequency von z über x darstellen möchten.
Im Gegensatz zu einem typischen CDF, sollte die Funktion nicht 1,0 erreichen, sondern
sum(df1$z)/length(df1$z)
a ymax von 0,36 (721/2000).
mit ggplot2
wir eine CDF von x mit dem folgenden Befehl erstellen:
library(ggplot2)
ggplot(df1, aes(x)) + stat_ecdf()
Aber ich mag dieses Grundstück erweitern den kumulativen prozentualen Anteil von z zu zeigen (in Abhängigkeit von ‚x‘)
Das sollte Endergebnis wie
wieEDIT
mit einiger sehr schlechten Datenmanipulation Ich bin in der Lage, die etwas ähnlich zu einem CDF Grundstück zu erzeugen, aber es muss eine schönere und einfache Methode, mit verschiedenen Paketen und ggplot seiner
mytable <- table(df1$x, df1$z)
mydf <- as.data.frame.matrix(mytable)
colnames(mydf) <- c("z_no", "z_yes")
mydf$A <- 1:length(mydf$z_no)
mydf$sum <- cumsum(mydf$z_yes)
mydf$dis <- mydf$sum/length(z)
plot(mydf$A, mydf$dis)
von .35 nur multiplizieren? – MichaelChirico