0

我注意到在进行先验样本大小计算时,Python 的 TTestIndPower() 不会产生与 GPower/R 相同的结果。例如:

from statsmodels.stats.power import TTestIndPower
from statsmodels.stats.proportion import proportion_effectsize
import math as m

p0 = 0.01
p1 = 0.02
power = 0.8
alpha = 0.05
prop2 = 0.8 #80% allocation to group 2
ratio = prop2 / (1 - prop2)

target_effect_size = proportion_effectsize(p0, p1)

analysis = TTestIndPower()
required_n1 = analysis.solve_power(
    target_effect_size,
    power = power,
    alpha = alpha,
    ratio = ratio,
    alternative = 'two-sided'
)

required_n1 = m.ceil(required_n1)
multiplier = ratio + 1
required_n = m.ceil(required_n1 * multiplier)
print(required_n)

这将返回 7046 组 1 和 2 之间的总样本量。

但是当我将相同的参数放入 Gpower 或使用 R 的 power.prop.test 函数时,我得到 7751。有谁知道它们为什么不同?一种方法被认为比另一种更好吗?

4

0 回答 0