Вот решение для преобразования дней в годы, месяцы и дни для общего года (можно легко расширить его, чтобы охватить високосные годы):
days_toymd = function(days){
year_days = 365
month_days = c(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)
## number of years
yr = round(days / year_days, 0)
yr_lo = days %% year_days
month = 0
## number of months
for(i in month_days){
if(yr_lo >= i){
month = month + 1
yr_lo = yr_lo - i
}
else if(yr_lo < i){
yr_lo = yr_lo
}
}
print("days converted to years, months and days")
return(paste(yr, month, yr_lo))
}