Я пытаюсь повторить то, что делает этот веб-сайт - получить разницу между двумя датами, выраженными в годах-месяцах-днях.
Мне удалось получить разницу лет-месяцев в довольно грязной формеспособ:
paste(
floor(
interval(as.Date("1985-09-17"),
as.Date("1996-03-13"))
%/% months(1) /12), ' years, ',
ifelse(
ceiling(((interval(as.Date("1985-09-17"),
as.Date("1996-03-13"))
%/% months(1) /12) %% 1 )*12)<10,
paste0('0',ceiling(((interval(as.Date("1985-09-17"),
as.Date("1996-03-13"))
%/% months(1) /12) %% 1)*12)),
ceiling(((interval(as.Date("1985-09-17"),
as.Date("1996-03-13"))
%/% months(1) /12) %% 1 )*12)),' months', sep='')
[1] "10 years, 04 months"
Есть ли лучший способ сделать это?Я нашел похожий вопрос здесь , но он не имеет удовлетворительного ответа, и я предполагаю, что с тех пор было разработано много новых пакетов, так что, возможно, есть простой способ сделать это