Вы, вероятно, ищете try
или tryCatch
. Например, возведение в квадрат значений в простом списке целых чисел и символов:
vec <- list(1, 2, 3, "c", 4, 5, 6)
Используйте try
, чтобы просто продолжить при обнаружении ошибки:
for (x in vec) {
try(print(x^2), silent = T)
}
# [1] 1
# [1] 4
# [1] 9
# [1] 16
# [1] 25
# [1] 36
Используйте tryCatch
, чтобы напечатать конкретное сообщение и т. Д.: * 10101 *
for (x in vec) {
tryCatch(print(x^2),
error = function(cond) message(paste(x, "is not a number"))
)
}
# [1] 1
# [1] 4
# [1] 9
# c is not a number
# [1] 16
# [1] 25
# [1] 36