样本比例几乎为 1 或 0 时的比例的置信区间

机器算法验证 置信区间 部分
2022-03-07 06:35:25

我知道有一些方法可以计算比例的置信区间以将限制保持在 (0, 1) 范围内,但是快速的 Google 搜索只引导我进行标准计算:我也相信有一种方法可以使用二项分布来计算确切的置信区间(示例 R 代码会很好)。我知道我可以使用 prop.test 函数来获取间隔,但我有兴趣完成计算。p^±1.96p^(1p^)N

示例情况(N = 试验次数,x = 成功次数):

N=40, x=40
N=40, x=39
N=20, x=0
N=20, x=1
4个回答

单个比例有许多置信区间,其中大多数在接近 0 或 1 时表现不佳。上面提到的“精确”Clopper-Pearson 区间在该设置中非常保守,这意味着区间的实际覆盖范围可以是比标称的大很多。p1α

对于接近 0 或 1 具有相当好的性能的区间实际上是使用 Jeffreys 先验的贝叶斯可信区间。例如,参见Brown、Cai 和 DasGupta (2002) 的这篇论文在 R 中计算很简单:p

qbeta(c(alpha/2,1-alpha/2),x+0.5,n-x+0.5)

没关系,它本质上是贝叶斯 - 它已经一次又一次地被证明具有良好的常客性能!

(虽然在这种情况下通常建议使用贝叶斯杰弗里斯区间,但可以构建同时为小提供更高置信度和更低预期长度的区间;参见我最近的手稿。)p

使用 Clopper-Pearson 区间?

维基百科在这里描述了如何做到这一点: http ://en.wikipedia.org/wiki/Binomial_proportion_confidence_interval

例如,如果你在 40 次试验中取得 39 次成功,你会得到:

> qbeta(.025,39,2) #qbeta(alpha/2,x,n-x+1) x=num of successes and n=num of trials
[1] 0.8684141
> qbeta(1-.025,39,2)
[1] 0.9938864

对于 40 人中的 40 人,您将获得:

> qbeta(1-.025,40,1)    
[1] 0.9993673
> qbeta(.025,40,1)
[1] 0.9119027

为什么不只是以贝叶斯的方式来做呢?

也就是说,设置一个 beta 分布的先验,并选择一个积分与您想要的一样大的区间(例如,从模式中计算出来)。

Clopper-Pearson 是一种精确的二项式方法,即使成功次数为 N 中的 0 或 N 中的 N,也可用于获取 p 的置信区间。在第一种情况下,它将给出从 0 到 A 的区间,其中 A在后一种情况下,取决于 N 和 alpha 以及从 B 到 1。