我正在运行一个重复计算交叉验证带宽的模拟。
我有一个以下功能,我觉得效率非常低。
n <- 200L
x <- rnorm(n)
leave_1_out <- function(h){
loo <- rep(NA, n)
for(i in 1:n){
loo[i] <- density(x[-i], bw=h, from = x[i], to=x[i], n=1)$y
}
}
system.time(leave_1_out(0.1))
有没有更好,更快的方法?