我试图做一个简单的模拟来验证我在 R 中使用包 pwr 找到的一些功率计算可能看起来很奇怪(https://cran.r-project.org/web/packages/pwr/pwr. .pdf )。
我所做的是使用 N 为 25 和样本为 0.5 的单样本 t 检验的最简单示例:
pwr.t.test(n = 25,d = .5,type= "one.sample",sig.level = .05)
结果表明,在这种情况下应该有大约 67% 的功效: 单样本 t 检验功效计算
n = 25
d = 0.5
sig.level = 0.05
power = 0.6697077
alternative = two.sided
然后,我做了一个小型模拟,从平均值为 107.5、标准差为 15(得到 ad=.5)的分布中抽样 100,000 次:
g <- matrix(NA,nrow = 100000,ncol=1)
for(i in 1:100000){
x <- rnorm(n = 25,mean = 107.5,sd=15)
g[i] = mean(x)}
最后,我计算了这些样本超过抽样分布的 95% CI 的次数:
upper = 100 + (1.96*(15/sqrt(25)))
lower = 100 - (1.96*(15/sqrt(25)))
Outcomes <- ifelse((g > upper | g < lower),"Reject Null Hypothesis","Fail to Reject Null Hypothesis")
table(Outcomes)/100000
Outcomes
Fail to Reject Null Hypothesis Reject Null Hypothesis
0.29726 0.70274
如您所见,pwr 包的结果与我的模拟结果之间存在微小差异(~3%)。它看起来很小但不平凡。我的逻辑中是否有错误?