二项式检验的功效分析

机器算法验证 r 二项分布 统计能力
2022-04-13 13:46:12

我正在尝试测试一些抽样个体的性别比例是否与预期的性别比例 1 显着不同。我有 n = 64,其中女性 = 34,男性 = 30。

我进行了二项式检验:

succ <- c(34,30) 
binom.test(succ,0.5)

data:  succ
number of successes = 34, number of trials = 64, p-value = 0.708
alternative hypothesis: true probability of success is not equal to 0.5
95 percent confidence interval:
 0.4023098 0.6572035
sample estimates:
probability of success 
               0.53125 

我想计算这个测试的统计功效,我知道power = 1-β,其中 β 是 II 型错误。

阅读此解释时,我感到困惑我不明白如何使这个公式(对于 n 的不同选择)适应我的情况:

enn = 1:2000
critical = qbinom(.025, enn, .5)
beta = pbinom(enn-critical,enn,.55) - pbinom(critical-1,enn,.55)

我所做的是

1-(pbinom(34,64,0.5)- pbinom(30, 64, .5))
[1] 0.7410237

但我不确定使用 0.5 作为概率是否正确。此外,我尝试了不同的方法,得到了完全不同的结果

pwr.p.test(ES.h(.53125,.5),n=64, power=NULL, alternative = "two.sided")

 proportion power calculation for binomial distribution (arcsine transformation) 

              h = 0.06254076
              n = 64
      sig.level = 0.05
          power = 0.07913605
    alternative = two.sided

这两个测试之一是否正确,为什么?

谢谢你的帮助!

2个回答

为了找到“力量”,你需要有一个特定的选择。假设你的零假设是H0:p=0.5对比Ha:p>0.5,在哪里 p=P(Female).还假设你有n=64并且你想要一个级别的测试的力量α=0.05反对特定的替代方案p=0.6.

对于精确的二项式检验,您需要找到临界值c这样P(Xc|n=64,p=.5)已最大化,但仍低于0.05.在 R 中,其中dbinompbinomqbinom分别表示二项式 PDF、CDF 和分位数函数(逆 CDF),我们看到临界值为c=40.请注意,由于二项分布的离散性,所谓的“5% 水平”实际上以概率拒绝 P(RejH0|H0True)3%.

qbinom(.95, 64, .5)
[1] 39
sum(dbinom(39:64, 64, .5))
[1] 0.05171094
sum(dbinom(40:64, 64, .5))
[1] 0.02997059
1 - pbinom(39, 64, .5)
[1] 0.02997059

那么这个测试对替代价值的力量p=0.6是(谁)给的 P(X40|n=64,p=0.6)=0.3927.

1 - pbinom(39, 64, .6)
[1] 0.392654

p.a我们可以通过查看之间的一系列替代值来制作此测试的“功率曲线”0.5.75.下面的第一块 R 代码在下图中形成了黑色实线。

p.a = seq(.50, .75, by=.01)
p.rej = 1 - pbinom(39, 64, p.a)
plot(p.a, p.rej, type="l", main="Power Curve")
 abline(h=c(.03,1), col="green2")

在此处输入图像描述

如果我们看一个级别α=0.05测试H0:p=0.5对比Ha:p>0.5n=256科目,则临界值为c=141,拒绝概率H0是真的是0.046,和反对各种替代价值的权力p更大,如图中蓝色虚线所示。

c.256 = qbinom(.95, 256, .5); c.256
[1] 141
1 - pbinom(c.256, 256, .5)
[1] 0.04565604
p.rej.256 = 1 - pbinom(c.256, 256, p.a)
lines(p.a, p.rej.256, col="blue", lty="dotted")

备注:因为n=64足够大以使用正态近似值,您可能想尝试使用正态近似值。一个缺点是这忽略了离散性问题,因此您的测试可能会在 5% 的情况下准确拒绝H0是真的。此外,您需要使用连续性校正以获得最佳结果。

R 中显着性水平的一项相关计算是:

1 - pnorm(39.5, 32, 4)
[1] 0.03039636

(近似)功率是0.3895:

mu.a = 64*.6;  sg.a = sqrt(64*.6*.4)
mu.a; sg.a
[1] 38.4
[1] 3.919184

1 - pnorm(39.5, mu.a, sg.a)     # Using NORM(mu.a, sg.a)
[1] 0.3894815
1 - pnorm((39.5 - mu.a)/sg.a)   # Standardizing and using NORM(0,1).
[1] 0.3894815

问问自己为什么要计算功率也很重要。由于您已经拥有数据,因此您正在计算“事后”功率统计数据(而不是事前功率统计数据)。毫无价值的是,许多作者从频率论者的角度批评了事后权力统计的使用——例如,参见https://gpsych.bmj.com/content/32/4/e100069