【问题标题】:power.prop.test Error when running a for loop运行 for 循环时的 power.prop.test 错误
【发布时间】:2020-06-18 05:05:20
【问题描述】:

当我尝试运行 power.prop.test 来执行 A/B 测试的功率分析时,它表现良好。但是,当我尝试绘制一系列“功率”所需的样本量图时,我做了一个 for 循环,控制台给了我这个错误。

 p2 <- seq(.1511, .188875, .007555)
 np2 <- length(p2)
 power <- seq(.4, .9, .1)
 npower <- length(power)
 samsize <- array(numeric(np2*npower), dim = c(np2,npower))
 for (i in 1:npower){
   for (j in 1:np2){
     result <- power.prop.test(n = NULL, p1 =.1511, p2 = p2[j], 
                               sig.level = .05, power = power[i],
                               alternative = c("two.sided","one.sided"),
                               strict = FALSE, tol = .Machine$double.eps^.25)
     samsize[j,i] <- ceiling(result$n)
   }
 }

uniroot 中的错误(函数(n) eval(p.body) - 幂,c(1,1e+07),tol = tol, : 在 1000 次迭代中没有发现符号变化

#Error message Error in uniroot(function(n) eval(p.body) - power, c(1, 1e+07), tol = tol, : 在 1000 次迭代中没有发现符号变化

我想知道如何解决它。

【问题讨论】:

  • 当 p1 = p2 时,你不能得到肯定的结果。

标签: r statistics power-analysis


【解决方案1】:

我怀疑这与p2[1] = p1 的事实有关。这意味着无限的样本量。

顺便说一句:当您在这样的循环中遇到问题时,了解问题发生在循环的哪个迭代中非常有用。下次在相关点放一些打印语句,确定错误发生时循环的状态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多