如何计算比率的置信区间?


12

考虑一个输出在0到1之间的实验。在这种情况下,如何获得该比率应该无关紧要。在此问题的先前版本中对此进行了详细阐述,但为清晰起见,在关于meta的讨论之后被删除。Xi

此实验重复次,而n很小(大约3-10)。该X 被认为是独立同分布的。从这些我们估计平均通过计算平均¯ X,但如何计算相应的置信区间[ ù V ]nnXiX¯[U,V]

使用标准方法计算置信区间时,有时大于1。但是,我的直觉是正确的置信区间...V

  1. ...应在0到1的范围内
  2. ...应随着n的增加而变小n
  3. ...大约是使用标准方法计算得出的顺序
  4. ...通过数学上合理的方法计算

这些不是绝对要求,但我至少想了解为什么我的直觉是错误的。

根据现有答案进行计算

在下文中,从现有的答案所产生的置信区间为比较{Xi}={0.985,0.986,0.935,0.890,0.999}

标准方法(又名“学校数学”)

σ2=0.0204,因此,99%的置信区间是[0.8651.053]。这与直觉1相矛盾。X¯=0.959σ2=0.0204[0.865,1.053]

裁剪(在评论中由@soakley建议)

只需使用标准方法,然后提供作为结果是很容易做到。但是我们可以这样做吗?我尚未确信下限保持不变(-> 4.)[0.865,1.000]

逻辑回归模型(@Rose Hartman建议)

{4.18,4.25,2.09,2.66,6.90}[0.173,7.87][0.543,0.999]

二项式比例置信区间(由@Tim建议)

该方法看起来不错,但不幸的是它不适合实验。只需将结果组合起来,然后将其解释为@ZahavaKor建议的一项大型重复的Bernoulli实验,结果如下:

出来的 5 * 1000的总额。将其送入调整。沃尔德计算器给 [ 0.9511 0.9657 ]。这似乎是不现实的,因为在该间隔内没有单个 X i!(-> 3.)985+986+890+935+999=479551000[0.9511,0.9657]Xi

引导程序(由@soakley建议)

我们有3125个可能的排列。取3093n=5的排列的中间手段,我们得到[0.910.99]。长得不坏的,但我希望一个更大的区间( - > 3)。但是,它的每个构造都不得大于[minXimaxXi]。因此,对于一个小的样本,它会增加而不是因为增加n(-> 2.)而收缩。这至少是上面给出的示例发生的情况。30933125=0.99[0.91,0.99][min(Xi),max(Xi)]n


您的第二种方法是正确的。我不确定第一个-没有用统计术语清楚地说明。据我所知,可重复性意味着同一实验是由不同的研究人员进行的,并且它们得到相似的结果。您需要更清楚地指定目标,最好是根据与您要估计的参数有关的统计假设。在我看来,仅使用“可再现性”一词太含糊。
Zahava Kor

没错,可重复性是正确的术语,而不是可重复性。我将尝试用统计术语构建一个定义。
koalo

@ZahavaKor我删除了有关重复性的未充分说明的示例,并指定了我的实际应用程序,希望它可以澄清我的问题而不引起混淆。
koalo '17

如果您确实要采样1000个大小的样本,则说明您没有正确应用重采样方法。但是,有了如此多的数据,您就不需要重新采样,并且可以使用标准的二项式方法获得良好的结果(即狭窄的置信区间),如上所述。仅因为您的单个数据点不在结果间隔中,并不表示该间隔是不正确的。
soakley

1
好吧,考虑一下。您抽样10个项目并获得9个成功。我采样了1000次,并获得了900次成功。谁会更准确地估算均值?如果直觉还不存在,请尝试使用Tim引用的公式。因此,在您问题的最后一个示例中,样本大小不是5,而是5000!
soakley

Answers:


6

首先,要弄清楚,您要处理的不是二项分布,正如您的问题所暗示的那样(您将其称为伯努利实验)。二项式分布是离散的-结果是成功或失败。您的结果是每次运行实验时的比率,而不是随后计算一个汇总比率的一组成功和失败的比率。因此,计算二项式比例置信区间的方法将浪费大量信息。但是您是正确的,将其视为正态分布是有问题的,因为可以获得的CI超出了变量的可能范围。

我建议从逻辑回归的角度考虑这一点。使用比率变量作为结果并没有预测变量,运行逻辑回归模型。截距及其CI将为您提供logit所需的内容,然后您可以将其转换回比例。您也可以自己进行逻辑转换,计算CI,然后转换回原始比例。我的python很糟糕,但是这是在R中可以做到的方式:

set.seed(24601)
data <- rbeta(100, 10, 3)
hist(data)

原始数据直方图

data_logits <- log(data/(1-data)) 
hist(data_logits)

Logit转换数据的直方图

# calculate CI for the transformed data
mean_logits <- mean(data_logits)
sd <- sd(data_logits)
n <- length(data_logits)
crit_t99 <- qt(.995, df = n-1) # for a CI99
ci_lo_logits <- mean_logits - crit_t * sd/sqrt(n)
ci_hi_logits <- mean_logits + crit_t * sd/sqrt(n)

# convert back to ratio
mean <- exp(mean_logits)/(1 + exp(mean_logits))
ci_lo <- exp(ci_lo_logits)/(1 + exp(ci_lo_logits))
ci_hi <- exp(ci_hi_logits)/(1 + exp(ci_hi_logits))

以下是这些数据的99%CI的上下限:

> ci_lo
[1] 0.7738327
> ci_hi
[1] 0.8207924

这听起来像是一种好方法,但是结果并不是我凭直觉所期望的:0.99,0.94,0.94的data_logits为4.59,2.75,2,75,置信区间为[-2.73,9.47]。将其转换回给[0.061,0.999]-比我预期的要大得多。
koalo '17

1
对于仅三个观察,您应该期望很大的置信区间。从直方图来看,您似乎有三个以上的观察结果---我假设您的0.99、0.94、0.94示例只是为了说明。如果您的实际样本量是3,则我建议您根本不计算置信区间(就此而言,就是平均值)。
罗斯·哈特曼

上面的直方图来自python脚本,以说明我的问题。我无法从实际实验中获得这么多测量结果。至少不是每个参数组合。我同意3个可能太小,在最终评估中可能大约10个,但肯定不会更多。那么,我该怎么做才能证明我不仅很幸运能够获得一次测量结果,而且重复实验并不能给出完全不同的结果?
koalo

@RoseHartman这是一个很好的清晰描述,但也很高兴看到您的方法应用于问题中的数据样本(n = 5)。
PM。

@scitamehtam我在koalo提供示例数据并澄清样本数量为10个或更少观察值之前写了我的答案。此后,koalo更新了原始问题,以非常有用的方式将每个答案方法的工作示例包含在n = 5的数据中。
Rose Hartman

3

您可能要尝试重新采样/引导。让我们看看您提到的简单案例。

使用0.99、0.94和0.94的3个数据点,您甚至都不需要重新采样,因为您可以列出所有27种可能的排列,找到每种情况的均值,然后对均值进行排序。

25/27=26/27=

n

这里的问题是:如何为置换检验的参数创建置信区间?提供了更多细节,包括一些R代码。


如另一条评论中所述,n不会“大大大于3”,但是如果需要的话,n = 10是可能的。虽然这种方法保证了我的置信区间不会超过1.0,但它似乎大大低估了其他方法给出的置信区间。实际上,它永远不会大于[min,max]间隔。
koalo

您多久一次认为平均值不在[min,max]范围之外?
soakley

可能很少,但这是否还意味着如果[min,max]间隔足够小以证明我的主张得到支持,我可以忘记置信区间,而只需提供[min,max]?以我的经验,对于小样本量,与[min,max]相比,置信区间相当大。
koalo

2

二项式置信区间一直以来都是统计学家争论的主题。您的问题认为比率小于100%,但是如果我们使用100%,则问题变得更加棘手。提出问题的一种有见地的方法是:

在过去的2,000年中,太阳每天都在无休止地升起,明天升起的可能性是多少?

p=1

有许多计算这些尾数的方法。我建议您查阅Wikipedia的数学知识,或者,如果您只想找到答案,请搜索像这样的二项式间隔计算器(碰巧也对它背后的数学有更多解释)。


这与我要寻找的非常接近,但是公式似乎只计算出我的单次实验结果的置信区间,而不是多个实验的平均值的置信区间。
koalo

只要分母(示例中为100个数据包)在所有运行中都保持不变,就可以运行一轮或多轮都没有关系。数学上运行3个实验(每100个实验)与运行300个数据包的实验在数学上是相同的,您可以使用二项式公式,但n = 300而不是n = 100。如果分母不相等,则需要找到加权平均值(由n加权),新的n将是n的总和。
Zahava Kor

@ZahavaKor由于评论太长,因此我对问题进行了编辑。我并不是说这是错误的,但这与我目前的理解不符。
koalo

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.