我在计算所有参与者的年龄时遇到问题。
我仅以月份和年份(XX / XXXX)记录了出生日期,并且我记录了数据的确切日期(XX / XX / XXXX)。
我想使用eeptools软件包中的age_calc函数来计算年龄。 不幸的是,某些事情不起作用。我怀疑是因为一个日期是准确的,而另一个日期没有指定确切的日期。
这是我尝试过的:
df$birthdate <- as.Date(df$birthdate)
df$visitdate <- as.Date(df$visitdate)
age <- age_calc(df$birthdate,enddate=df$visitdate, unit="year")
我得到的答复是: “ dob和enddate都必须是Date类对象”。
所以我在想的是将出生日期更改为始终是每月的第一天,以便使其正常工作。不幸的是,我不知道该怎么做。有人可以帮忙吗?有没有更好的方法来解决此问题?
提前谢谢! 卢卡斯
答案 0 :(得分:0)
您需要使用paste0()
才能将日期添加到日期:
as.Date(paste0(df$brthdat, "-01"))
所以:
df$brthdat <- as.Date(paste0(df$brthdat, "-01"))
df$visitdate <- as.Date(df$visitdate)
library(eeptools)
age <- age_calc(df$birthdate,enddate=df$visitdate, unit="year", precise = FALSE)