我正在尝试为比例测试创建模拟,以查看我将获得显着结果的频率(即p /值<0.05)。我假设人口规模不等,例如
test <- rbinom(100, 5000, 0.05)
ctrl <- rbinom(100, 10000, 0.04)
这里我有100个模拟测试,测试群体中有5000个,对照中有10000个,转换率的实际差异(测试为0.05,对照为0.04)。
我现在想为每个模拟测试运行一个比例测试并获得p值。因此,对于我要做的第一次测试:
prop.test(c(test[1], ctrl[2]), c(5000, 10000))$p.value
然后我用for循环遍历这个以获得每个模拟测试的p值。
我希望以更紧凑的方式做到这一点。我找到了一种方法来做一个带有Map here的单样本比例测试,但是我被困在如何进行双样本测试。看起来我应该能够在一行中完成它,只需得到一个p值向量作为输出。
我尝试了以下
Map(prop.test, c(test,ctrl), c(5000, 10000), alternative="two.sided", correct = F)
但是它给了我200个单样本比例测试,而不是100个2样本比例测试......我能做些什么来解决它?
理想情况下,我会得到一个长度为100且带有p.values的向量,所以我可以检查哪个部分低于5%,这将是测试能力..
答案 0 :(得分:1)
如果我告诉你,你需要每个道具的每个p.value。测试。 你试过这个吗? prop.test(测试,CTRL)[[4]]