Ich habe bereits zahlreiche Fragen dazu gefunden, aber irgendwie hat es mir nicht wirklich geholfen. Ich verstehe nicht, wie die binwidth in einer Dichte Histogramm in ggplot2 zu ändern, so dass die Wahrscheinlichkeiten bis zu 1.er Summe Es scheint, wie es funktioniert nur, wenn die binwidth genau ist 1. Hier ist ein Beispiel:Bin bindeweite des Dichte-Histogramms so ändern, dass Wahrscheinlichkeiten zu 1
set.seed(1)
df = data.frame("data" = runif(1000, min=0, max=100))
a = ggplot(data = df, aes(x = data))+
geom_histogram(aes(y=..density..),colour="black", fill = "white",
breaks=seq(0, 100, by = 50))
b = ggplot(data = df, aes(x = data))+
geom_histogram(aes(y =..density..),
breaks=seq(0, 100, by = 30),
col="black",
fill="white")
c = ggplot(data = df, aes(x = data))+
geom_histogram(aes(y =..density..),
breaks=seq(0, 100, by = 10),
col="black",
fill="white")
d = ggplot(data = df, aes(x = data))+
geom_histogram(aes(y =..density..),
breaks=seq(0, 100, by = 1),
col="black",
fill="white")
grid.arrange(a,b,c,d, ncol= 2)
Wenn Sie sich die Wahrscheinlichkeitsachse ansehen, können Sie sehen, dass die ersten drei Graphen falsch sein müssen. Dies sind nicht die richtigen Histogramme, da die Bins nicht zu 1 summieren. Die Y-Achse ändert sich gemäß dem Histogramm a, b, c oder d sogar nicht signifikant. Ich habe auch versucht, den Befehl "breaks" durch den Befehl "binwidth" zu ersetzen, aber es ist noch schlimmer. Ich würde auch gerne wissen, wie Sie die Wahrscheinlichkeiten der einzelnen Bins eines Histogramms zählen können, um zu beweisen, dass es 1 ergibt oder nicht?
Danke für jede Hilfe.
sollten Sie, was überprüfen, die de nsity-Werte in y-Achse darstellen. Es sind keine Wahrscheinlichkeiten. In vielen Fällen können diese Werte < 0 or > sein. 1. Versuchen Sie stattdessen, 'aes (y = .. count ../ sum (.. count ..))' 'zu verwenden. – AntoniosK
Einige nützliche Informationen hier: https://stats.stackexchange.com/questions/4220/can-a-probability-distribution-value-exceeding-1-be-ok – AntoniosK