boot.ci
位於 boot
包(package)。 說明
該函數生成 5 種不同類型的等尾兩側非參數置信區間。它們是一階正態近似、基本 Bootstrap 區間、學生化 Bootstrap 區間、Bootstrap 百分位區間和調整 Bootstrap 百分位 (BCa) 區間。可以生成這些間隔的全部或子集。
用法
boot.ci(boot.out, conf = 0.95, type = "all",
index = 1:min(2,length(boot.out$t0)), var.t0 = NULL,
var.t = NULL, t0 = NULL, t = NULL, L = NULL,
h = function(t) t, hdot = function(t) rep(1,length(t)),
hinv = function(t) t, ...)
參數
boot.out |
類 |
conf |
包含所需區間置信水平的標量或向量。 |
type |
表示所需間隔類型的字符串向量。該值應該是值 |
index |
這應該是長度為 1 或 2 的向量。 |
var.t0 |
如果提供,則用作正態近似和學生化區間統計方差估計的值。如果未提供且 |
var.t |
這是感興趣變量的引導複製的方差向量(長度為 |
t0 |
感興趣的統計量的觀測值。默認值為 |
t |
引導程序複製感興趣的統計數據。它必須是長度為 |
L |
觀測數據的感興趣統計量的經驗影響值。這些僅用於 BCa 間隔。如果通過參數 |
h |
定義轉換的函數。間隔按 |
hdot |
一個參數的函數,返回 |
hinv |
一個函數,例如 |
... |
|
細節
計算所依據的公式可以在 Davison 和 Hinkley (1997) 的第 5 章中找到。函數 boot
必須在運行此函數之前運行,以創建要作為 boot.out
傳遞的對象。
學生化區間需要方差估計。對於正常理論區間,觀察到的統計量的方差是可選的。如果未提供,則使用方差的引導估計。正常間隔也使用自舉偏差校正。
當需要非整數階統計量時,使用正常分位數尺度的插值。如果使用的階次統計量是 boot.out 中 R 值的最小或最大,則會生成警告,並且此類間隔不應被視為可靠。
值
包含間隔的 "bootci"
類型的對象。它有組件
R |
間隔所基於的引導重複次數。 |
t0 |
與間隔相同尺度的統計觀察值。 |
call |
對生成對象的 它還將包含以下一個或多個組件,具體取決於 |
normal |
使用正態近似計算的間隔矩陣。它將有 3 列,第一列是水平,另外兩列是間隔的上端點和下端點。 |
basic |
使用基本引導方法計算的間隔。 |
student |
使用學生引導法計算的間隔。 |
percent |
使用 bootstrap 百分位數方法計算的間隔。 |
bca |
使用調整引導百分位數 (BCa) 方法計算的間隔。 後四個組件將是具有 5 列的矩陣,第一列包含級別,接下來的兩列包含計算中使用的順序統計數據的索引,最後兩列包含計算的端點本身。 |
例子
# confidence intervals for the city data
ratio <- function(d, w) sum(d$x * w)/sum(d$u * w)
city.boot <- boot(city, ratio, R = 999, stype = "w", sim = "ordinary")
boot.ci(city.boot, conf = c(0.90, 0.95),
type = c("norm", "basic", "perc", "bca"))
# studentized confidence interval for the two sample
# difference of means problem using the final two series
# of the gravity data.
diff.means <- function(d, f)
{ n <- nrow(d)
gp1 <- 1:table(as.numeric(d$series))[1]
m1 <- sum(d[gp1,1] * f[gp1])/sum(f[gp1])
m2 <- sum(d[-gp1,1] * f[-gp1])/sum(f[-gp1])
ss1 <- sum(d[gp1,1]^2 * f[gp1]) - (m1 * m1 * sum(f[gp1]))
ss2 <- sum(d[-gp1,1]^2 * f[-gp1]) - (m2 * m2 * sum(f[-gp1]))
c(m1 - m2, (ss1 + ss2)/(sum(f) - 2))
}
grav1 <- gravity[as.numeric(gravity[,2]) >= 7, ]
grav1.boot <- boot(grav1, diff.means, R = 999, stype = "f",
strata = grav1[ ,2])
boot.ci(grav1.boot, type = c("stud", "norm"))
# Nonparametric confidence intervals for mean failure time
# of the air-conditioning data as in Example 5.4 of Davison
# and Hinkley (1997)
mean.fun <- function(d, i)
{ m <- mean(d$hours[i])
n <- length(i)
v <- (n-1)*var(d$hours[i])/n^2
c(m, v)
}
air.boot <- boot(aircondit, mean.fun, R = 999)
boot.ci(air.boot, type = c("norm", "basic", "perc", "stud"))
# Now using the log transformation
# There are two ways of doing this and they both give the
# same intervals.
# Method 1
boot.ci(air.boot, type = c("norm", "basic", "perc", "stud"),
h = log, hdot = function(x) 1/x)
# Method 2
vt0 <- air.boot$t0[2]/air.boot$t0[1]^2
vt <- air.boot$t[, 2]/air.boot$t[ ,1]^2
boot.ci(air.boot, type = c("norm", "basic", "perc", "stud"),
t0 = log(air.boot$t0[1]), t = log(air.boot$t[,1]),
var.t0 = vt0, var.t = vt)
參考
Davison, A.C. and Hinkley, D.V. (1997) Bootstrap Methods and Their Application, Chapter 5. Cambridge University Press.
DiCiccio, T.J. and Efron B. (1996) Bootstrap confidence intervals (with Discussion). Statistical Science, 11, 189-228.
Efron, B. (1987) Better bootstrap confidence intervals (with Discussion). Journal of the American Statistical Association, 82, 171-200.
也可以看看
相關用法
- R boot.array 自舉重采樣數組
- R boot 引導重采樣
- R beaver 海狸體溫數據
- R bigcity 美國城市人口
- R breslow 醫生因吸煙死亡
- R brambles 荊棘藤的空間位置
- R poisons 動物生存時間
- R ducks 雜交鴨的行為和羽毛特征
- R nodal 前列腺癌的淋巴結受累
- R cloth 布料瑕疵數量
- R polar 新喀裏多尼亞紅土的極點位置
- R capability 模擬製造過程數據
- R saddle.distn Bootstrap 統計的鞍點分布近似
- R tsboot 時間序列的引導
- R logit 比例的邏輯
- R EEF.profile 經驗可能性
- R tau Tau 粒子衰變模式
- R gravity 重力加速度
- R plot.boot Bootstrap 模擬的輸出圖
- R tilt.boot 非參數傾斜引導
- R envelope 曲線的置信區間
- R co.transfer 一氧化碳轉移
- R imp.weights 重要性采樣權重
- R acme 每月超額返回
- R glm.diag.plots 廣義線性模型的診斷圖
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Nonparametric Bootstrap Confidence Intervals。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。