Я прочитал несколько других SO вопросов о tryCatch
и cuzzins, а также документацию:
- Обработка исключений в R
- отлов ошибки и затем логика ветвления
- Как я могу проверить, приводит ли вызов функции к предупреждению?
- Проблемы с графиками в цикле
но я все еще не понимаю
Я запускаю цикл и хочу перейти к next
если произойдет какая-либо из нескольких ошибок:
for (i in 1:39487) {
# EXCEPTION HANDLING
this.could.go.wrong <- tryCatch(
attemptsomething(),
error=function(e) next
)
so.could.this <- tryCatch(
doesthisfail(),
error=function(e) next
)
catch.all.errors <- function() { this.could.go.wrong; so.could.this; }
catch.all.errors;
#REAL WORK
useful(i); fun(i); good(i);
} #end for
(кстати, документации для next
я не найду)
Когда я запускаю это, R
сигналит:
Error in value[[3L]](cond) : no loop for break/next, jumping to top level
Какой основной момент я здесь упускаю? tryCatch
явно находится внутри цикла for
, так почему R
не знает об этом?