如果引导程序和置信区间的形成正确执行,则意味着与任何其他置信区间相同。从频率论者的角度来看,95% CI 意味着如果整个研究无限重复,则以这种方式形成的 95% 的置信区间将包括真实值。当然,在您的研究或任何给定的个人研究中,置信区间要么包含真实值,要么不包含真实值,但您不知道是哪个。为了进一步理解这些想法,它可能会帮助您在这里阅读我的答案:为什么 95% 置信区间 (CI) 并不意味着 95% 的机会包含平均值?
关于您的进一步问题,“真实值”是指相关人群的实际参数。(样本没有参数,它们有统计量;例如,样本均值是样本统计量,但总体均值是总体参数。)至于我们如何知道这一点,在实践中我们没有。你是对的,我们依赖于一些假设——我们一直都是。如果这些假设是正确的,则可以证明这些属性成立。这就是 Efron 在 1970 年代末和 1980 年代初的工作重点,但大多数人很难理解数学。有关引导程序的某种数学解释,请参阅@StasK 在此处的回答:向外行解释引导程序的工作原理x¯μ. 对于缺少数学的快速演示,请考虑使用以下模拟R
:
# a function to perform bootstrapping
boot.mean.sampling.distribution = function(raw.data, B=1000){
# this function will take 1,000 (by default) bootsamples calculate the mean of
# each one, store it, & return the bootstrapped sampling distribution of the mean
boot.dist = vector(length=B) # this will store the means
N = length(raw.data) # this is the N from your data
for(i in 1:B){
boot.sample = sample(x=raw.data, size=N, replace=TRUE)
boot.dist[i] = mean(boot.sample)
}
boot.dist = sort(boot.dist)
return(boot.dist)
}
# simulate bootstrapped CI from a population w/ true mean = 0 on each pass through
# the loop, we will get a sample of data from the population, get the bootstrapped
# sampling distribution of the mean, & see if the population mean is included in the
# 95% confidence interval implied by that sampling distribution
set.seed(00) # this makes the simulation reproducible
includes = vector(length=1000) # this will store our results
for(i in 1:1000){
sim.data = rnorm(100, mean=0, sd=1)
boot.dist = boot.mean.sampling.distribution(raw.data=sim.data)
includes[i] = boot.dist[25]<0 & 0<boot.dist[976]
}
mean(includes) # this tells us the % of CIs that included the true mean
[1] 0.952