[R] Difficulty using the tryCatch() function
Greg Minshall
m|n@h@|| @end|ng |rom um|ch@edu
Sun Feb 7 20:37:48 CET 2021
try removing the outermost '{'...'}'. e.g., { warning = ... } should be
'warning = ...'.
----
Adn <- function(x,y) {
out <- tryCatch(
{
x+y
},
warning = function(cond) {
message("There was a warning.")
message("Here is the original warning message:")
message(cond)
return(100)
},
error = function(cond) {
message("There was an error.")
message("Here is the original error message:")
message(cond)
return(200)
},
finally = {
message("Error handling done.")
}
)
if (out==100 | out==200) { z <- 0 }
else { z <- x+y }
return(z)
}
(result <- Adn(1,sqrt(2))) # should work fine
(result <- Adn(1,sqrt(-2))) # should catch a warning and set z to 0
(result <- Adn(1,"a")) # should catch an error and set z to 0
More information about the R-help
mailing list