我想整合内核密度估计,以获得cdf的内核估计值。
这是我的代码:
set.seed(1)
z <- rnorm(250)
pdf <- approxfun(density(z, bw = "SJ"), yleft = 0, yright = 0)
cdf <- function(b) {
integrate(pdf, -Inf, b)$value
}
x <- seq(-20, 20, 0.1)
plot(x, sapply(x, cdf), type = "l", xlab = "x", ylab = "density", ylim= c(0, 1))
产生以下情节
正如你所看到的,cdf在~18时降至零,这显然不应该发生。
为什么会发生这种情况,我该如何避免呢?