gpt4 book ai didi

r - 错误后继续在R中循环(例如,使用数字和字母的向量)

转载 作者:行者123 更新时间:2023-12-03 08:44:37 24 4
gpt4 key购买 nike

我目前正在一个项目中尝试在for循环中完成一项任务。有很多地方可能出问题(涉及通过rmarkdown创建pdf报告),但是在这种情况下,我不在乎是否出了问题,我只是希望for循环继续进行。

在下面的玩具示例中,我希望能够打印数字2到16,同时跳过字母“a”。

something<-function(x){
print(x + 1)
}

for(i in c(1:10,'a',11:15))
{
res <- try(something(i))
if(inherits(res, "try-error"))
{
#error handling code, maybe just skip this iteration using
next
}
#rest of iteration for case of no error
}

大致基于以下答案中提供的示例。

R Script - How to Continue Code Execution on Error

我尝试过修改其他几个“如何在R中继续for循环”以至于没有成功。

我不是一个全职程序员,所以我确信我缺少一些非常简单的东西,但是任何帮助将不胜感激。

最佳答案

我有一个类似的问题,我有一个函数在for循环中运行,如果error出现,则需要它保持运行。这是我的做法:

OutputStorage=list()

for (i in 1:k){
Output=tryCatch(examplefunction(x), error=function(e) NULL)
OutputStorage[[i]]=Output
}

因此,如果有输出,则将其存储在 list中,如果没有输出,则为此存储 NULL。我认为它正在运行;实际上刚刚运行它。
希望有帮助!

关于r - 错误后继续在R中循环(例如,使用数字和字母的向量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57465079/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com