【发布时间】:2017-03-09 14:57:17
【问题描述】:
所以我目前正在为一个类编写一些 R 代码。
library(pwr)
delta <- c(2.5, 5, 7.5,10)
v <- c(4,6,9,13)
size <- vector()
for (i in (v)){
for (j in (delta)){
tryCatch({
fRough <- sqrt(((1/i)*(j)^2)/(2*ucb2))
samplesize <- pwr.anova.test(k =i, f = fRough, sig.level = 0.05, power = 0.9)
size <- c(size, (trunc((samplesize[["n"]]),0)+1)*i)
}, error = function(e)(size <- c(size, i*2)))
}
}
ucb2 只是一些浮点值。我想运行这个循环,但是当 delta 为 7.5 和 10 时会出错。我希望我的代码在遇到错误时输出 (i*2) 的值。我尝试使用错误功能,但它似乎不起作用。另外,有人可以建议我可以了解函数(e)、函数(cond)等的材料吗?我无法在 SO 上找到答案。
提前感谢您的帮助。
【问题讨论】:
-
试试 Hadley 的 Advanced R 的 this chapter 开始异常处理。