【发布时间】:2021-10-14 04:55:36
【问题描述】:
StackOverflow 上有类似的问题,但是,我找不到与我的问题相同(或远程相似)的解决方案。我在 R
中运行如下模拟 iterSim <- 1000
for(i in 1:iterSim){
#Generate some random data
Z <- NormalDGP(n=T, beta=coef_min, theta=Theta, rho=Rho, ...)
y <- Z[1:(length(Z[,1])-1),1]
x <- Z[2:length(Z[,1]),2]
#Conduct the following tests! However, Dec_POS_Dep sometimes gives an error
Dec_POS_Dep <- POS_Dep(y, x, simul=TRUE, trueBeta=coef_min, ...)
Dec_POS_Fix <- POS_Fix(y, x, simul=TRUE, trueBeta=coef_min, ...)
Dec_CD_95 <- CD_95(y, x, simul=TRUE)
}
每次迭代 i 生成随机数并运行三个测试 - 即 Dec_POS_Dep、Dec_POS_Fix 和 Dec_CD_95。不幸的是,有时在模拟中 Dec_POS_Dep 给出错误并且模拟终止。如果给出错误,我不是在寻找循环跳过迭代(根据 StackOverflow 上的许多建议);但是,我希望重复该迭代。例如。如果代码在第 265 次迭代并且 Dec_Pos_Dep 给出错误,我希望它在第 265 次迭代时给它更多的镜头。对此的一些解决方案将不胜感激。
【问题讨论】:
-
如果
Dec_Pos_Dep成功,您可以在while-loop 和break-条件中使用try-函数。不知道,这样是不是个好办法……
标签: r for-loop error-handling try-catch