Подтвердить что ты не робот

R Script - Как продолжить выполнение кода при ошибке

Я написал R script, который включает в себя цикл, который извлекает внешние (веб-данные). Формат данных в большинстве случаев одинаковый, однако иногда формат изменяется непредсказуемым образом, и мой цикл сбой (останавливается).

Есть ли способ продолжить выполнение кода независимо от ошибки? Я ищу что-то похожее на "On error Resume Next" из VBA.

Спасибо заранее.

4b9b3361

Ответ 1

Используйте try или tryCatch.

for(i in something)
{
  res <- try(expression_to_get_data)
  if(inherits(res, "try-error"))
  {
    #error handling code, maybe just skip this iteration using
    continue
  }
  #rest of iteration for case of no error
}

Ответ 2

Вы можете использовать try:

# a has not been defined
for(i in 1:3)
{
  if(i==2) try(print(a),silent=TRUE)
  else print(i)
}