有没有办法找到这样的问题的解决方案;
如果我2010年1月10日的年龄是2岁,那么2012年4月10日的年龄是多少?
亲切的问候
答案 0 :(得分:1)
只需使用difftime()
计算差异,然后加上年龄。像这样:
earlier_age <- 2
diff <- as.numeric(difftime(latest_date, earlier_date), units="years")
#make sure that dates are actually date objects (using as.Date())
new_age <- diff + earlier_age
#So for your example:
latest_date <- as.Date("10/April/2012", format = "%d/%B/%Y")
earlier_date <- as.Date("10/jan/2010", format = "%d/%b/%Y")
earlier_age <- 2
diff <- as.numeric(difftime(latest_date, earlier_date), units="days")/365.25
new_age <- diff + earlier_age
您可以根据需要将单位更改为星期,小时等
答案 1 :(得分:0)
您可以设置日期,例如:
x <- as.Date("2010-01-10")
y <- as.Date("2012-04-10")
>y-x
Time difference of 821 days
从这里开始,只需将其添加到2年即可。让我知道是否有帮助!