我正在尝试编写一个通用函数,在R中计算二项式比例的区间估计覆盖概率。我打算使用各种置信区间方法(例如Wald、Clopper-Pearson、HPD区间)来实现这一点。
理想情况下,我希望有一个函数,可以将应该用于计算区间的方法作为参数传递进去。我的问题是:如何在另一个函数中包含一个函数作为参数?
以Exact Clopper-Pearson区间为例,我有以下函数:
# Coverage for Exact interval
ExactCoverage <- function(n) {
p <- seq(0,1,.001)
x <- 0:n
# value of dist
dist <- sapply(p, dbinom, size=n, x=x)
# interval
int <- Exact(x,n)
# indicator function
ind <- sapply(p, function(x) cbind(int[,1] <= x & int[,2] >= x))
list(coverage = apply(ind*dist, 2, sum), p = p)
}
Exact(x,n)是一个用于计算适当间隔的函数。我希望拥有。
Coverage <- function(n, FUN, ...)
...
# interval
int <- FUN(...)
我希望只有一个函数用于计算覆盖概率,而不是为每种区间计算方法单独编写一个覆盖函数。是否有标准的方法可以实现这一点?我尚未找到解释。
谢谢, 詹姆斯