首页 > 解决方案 > 计算给定R中特定年份的两个日期之间的周数

问题描述

我有几列的一些数据,前两个是:

begin_date end_date
2012-03-24 2012-04-10
2012-11-14 2013-01-10
2012-07-15 2013-07-15
2013-01-24 2013-07-30

我想计算每行这两个日期在 2013 年的周数,然后在必要时四舍五入。

例如,第一行显然会导致 0。

第二行将导致 2 周,因为 10 天舍入到 2 周。ETC

这是示例代码:

x <- data.frame(start_date=factor(c("2012-03-24", "2012-11-14", "2012-07-15", "2013-01-24")), 
                end_date=factor(c("2012-04-10", "2013-01-10", "2013-07-15", "2013-07-30")))
x$start_date <-as.Date(x$start_date)
x$end_date <- as.Date(x$end_date)

标签: daterounding

解决方案


  survey <- data.frame(date=c("2012-03-24","2012-04-10"),tx_start=c("2012-11-14","2013-01-10"))

survey$date_diff <- as.Date(as.character(survey$date), format="%Y/%m/%d")-
                  as.Date(as.character(survey$tx_start), format="%Y/%m/%d")
survey

推荐阅读