У меня есть примерная функция ниже, которая читает в дате как строку и возвращает ее как объект даты. Если он читает строку, которую он не может преобразовать в дату, он возвращает ошибку.
testFunction <- function (date_in) {
return(as.Date(date_in))
}
testFunction("2010-04-06") # this works fine
testFunction("foo") # this returns an error
Теперь я хочу использовать lapply и применить эту функцию к списку дат:
dates1 = c("2010-04-06", "2010-04-07", "2010-04-08")
lapply(dates1, testFunction) # this works fine
Но если я хочу применить функцию над списком, когда одна строка в середине двух хороших дат вернет ошибку, каков наилучший способ справиться с этим?
dates2 = c("2010-04-06", "foo", "2010-04-08")
lapply(dates2, testFunction)
Я предполагаю, что хочу попробовать ухватить там, но есть ли способ поймать ошибку для строки "foo", прося продолжить и прочитать третью дату?