计算给定年龄的出生日期

时间:2019-12-29 07:23:23

标签: r date

我有下面的数据。

ID  = 201
Age = 40

如何使用此信息和Sys.Date()函数计算出生日期?!

2 个答案:

答案 0 :(得分:2)

我们可以使用当前系统日期创建一个POSIXlt日期,将其减少Age中的年数,然后转换回R日期:

d <- as.POSIXlt(Sys.Date())
age <- 40
d$year <- d$year - age
as.Date(d)

[1] "1979-12-29"

当然,这意味着每个人看起来都会像今天这样过生日,但这也许并不是您要解决的练习的重点。

答案 1 :(得分:0)

使用软件包lubridate,您可以像下面这样

library(lubridate)
age <- 40
birth <- ymd(Sys.Date()) - years(age)

如此

> birth
[1] "1979-12-29"