我正在嘗試編寫一個通用函數來計算R中二項式比例區間估計的覆蓋概率。我打算對各種置信區間方法進行此操作。 Wald,Clopper-Pearson,不同先質的HPD間隔。函數參數作爲R函數中的參數
理想情況下,我希望有一個函數,可以採用應該用來計算間隔的方法作爲參數。我的問題是:如何在另一個函數中包含函數作爲參數?
作爲一個例子,對於精確Clopper皮爾森間隔I具有以下功能:
# 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)
}
其中精確(X,N)僅僅是一個計算合適的間隔的功能。我想有
Coverage <- function(n, FUN, ...)
...
# interval
int <- FUN(...)
,這樣我有一個函數來計算覆蓋概率,而不是爲間隔計算的每個方法分離的覆蓋函數。有沒有一個標準的方法來做到這一點?我一直無法找到解釋。
謝謝, 詹姆斯
您可能想要閱讀https://github.com/hadle y/devtools/wiki /功能編程 – hadley 2013-03-22 13:48:13
感謝您的有用鏈接。 – jatotterdell 2013-03-22 21:29:13