Возможно, вам придется начать с использования регулярных выражений, чтобы выяснить, какой тип временного интервала у вас есть, а затем перейти оттуда.Мне нравится пакет stringr для этого.Например, если IN является вашей входной строкой, а OUT - вашим желаемым выходом, вы можете сказать:
if(str_detect(IN, "day")){OUT <- as.numeric(str_extract(IN, "^[0-9]*"))}
Теперь у вас есть количество дней назад, и вы можете сделать что-то вроде
Sys.Date() - OUT
чтобы получить дату.Затем вы можете делать то же самое в течение месяцев и лет.Это неизбежно будет приблизительным, так как, например, не во всех месяцах одинаковое количество дней, но, похоже, ваши входные данные не слишком точны.