鉴于简单A / B测试的结果......
A B
clicked 8 60
ignored 192 1940
(即谈话率为A 4%和B 3%)
...... R中的一项费希尔试验表明没有显着差异
> fisher.test(data.frame(A=c(8,192), B=c(60,1940)))
...
p-value = 0.3933
...
但是R中有什么功能可以告诉我需要多少才能增加样本量来达到0.05的p值?
我可以增加A值(以它们的比例)直到我达到它但是必须有更好的方法吗?也许pwr.2p2n.test [1]在某种程度上可用?
[1] http://rss.acs.unt.edu/Rdoc/library/pwr/html/pwr.2p2n.test.html
答案 0 :(得分:7)
power.prop.test()
应该为你做这件事。为了让数学工作,我转换了你被忽略的'通过汇总列来获得数据。
> power.prop.test(p1=8/200, p2=60/2000, power=0.8, sig.level=0.05)
Two-sample comparison of proportions power calculation
n = 5300.739
p1 = 0.04
p2 = 0.03
sig.level = 0.05
power = 0.8
alternative = two.sided
NOTE: n is number in *each* group
这给出了5301,这是每组的,所以你的样本量必须是10600.减去已经运行的2200,你有8400"测试"去吧。
在这种情况下:
sig.level
与您的p值相同。power
是您在样本中找到重要结果的可能性。这有点武断,80%是常见的选择。请注意,选择80%表示您应该在20%的时间内找到重要性。增加功率意味着您需要更大的样本量才能达到所需的显着性水平。如果您想确定达到显着性所需的时间,请将8400除以每天的展示次数。这可以帮助确定它是否值得继续测试。
您还可以在测试开始前使用此功能确定所需的样本大小。在37 Signals blog上有一篇很好的文章描述了这一点。
这是一个原生的R函数,因此您不需要添加或加载任何包。除此之外,我无法说明这与pwr.p2pn.test()
有多相似。