我拥有的数据集包含日期列表date1和date2,格式为yyyymmdd
require(date)
date1: 1960-01-02, 1962-09-30, ...
date2: 1960-01-15, 1962-09-01,...
我想找到相隔天数,例如,从date1的第一个日期到date2的第一个日期有13天。
我已经尝试了as.numeric(as.date(date1,orgin="1960-01-01"))
,但我收到错误消息“无法强制转换为日期格式”
有人可以帮助我吗?
答案 0 :(得分:1)
这正是Hadley Wickham的lubridate
图书馆所擅长的。
#install.packages('lubridate')
library(lubridate)
date1 <- c('1960-01-02', '1962-09-30')
date2 <- c('1960-01-15', '1962-09-01')
# "ymd" = "year|month|day"
d1 <- ymd(date1)
d2 <- ymd(date2)
然后我们可以通过减去矢量来计算间隔。
> d2-d1
Time differences in days
[1] 13 -29