我想在iflese命令中检查R命令是否有错误。类似于以下一个。我想知道如何完成这一个。实际上我只想在前面的R代码中没有错误的情况下运行以下代码。
ifelse(
test= Check R Command has error or not
, yes = FALSE
, no = TRUE
)
ifelse(
test= log("a") # Has error
, yes = 3
, no = 1
)
答案 0 :(得分:2)
您可以使用tryCatch
:
tryCatch({
log(10)
1
}, error=function(e) 3)
# [1] 1
tryCatch({
log('a')
1
}, error=function(e) 3)
# [1] 3
在上面的第二个例子中,第一个表达式(可以是多行,如上所述)抛出一个错误,因此执行传递给error
参数的表达式。