Ich habe einen Datensatz mit vielen Nullen, der so aussieht:
set.seed(1)
x <- c(rlnorm(100),rep(0,50))
hist(x,probability=TRUE,breaks = 25)
Ich möchte eine Linie für ihre Dichte zeichnen, aber die density()
Funktion verwendet ein sich bewegendes Fenster, das negative Werte von x berechnet.
lines(density(x), col = 'grey')
Es gibt density(... from, to)
Argumente, aber diese scheinen nur die Berechnung abzuschneiden, nicht das Fenster so zu ändern, dass die Dichte bei 0 mit den Daten übereinstimmt, wie aus dem folgenden Diagramm ersichtlich ist:
lines(density(x, from = 0), col = 'black')
(Wenn die Interpolation geändert würde, würde ich erwarten, dass die schwarze Linie bei 0 eine höhere Dichte als die graue Linie hat.)
Gibt es Alternativen zu dieser Funktion, die eine bessere Berechnung der Dichte bei Null ermöglichen würden?