R查找2年工作周对象之间的差异
我有两个对象是一年一周。我想在几周内找出这两种方法的区别R查找2年工作周对象之间的差异,r,datediff,strftime,R,Datediff,Strftime,我有两个对象是一年一周。我想在几周内找出这两种方法的区别 dd1 <- data.frame(date1 = as.Date('2015-01-01') + 1:31 , date2 = as.Date('2016-03-01') + 1:31 ) dd1$wk1 <- strftime(dd1$date1, format = '%Y-%W') dd1$wk2 <- strftime(dd1$dat
dd1 <- data.frame(date1 = as.Date('2015-01-01') + 1:31
, date2 = as.Date('2016-03-01') + 1:31
)
dd1$wk1 <- strftime(dd1$date1, format = '%Y-%W')
dd1$wk2 <- strftime(dd1$date2, format = '%Y-%W')
dd1$week_diff <- difftime(dd1$wk1, dd1$wk2)
Error in as.POSIXlt.character(x, tz, ...) :
character string is not in a standard unambiguous format
有什么建议吗
注意:我不能使用原始日期,因为我的数据由于聚合而不包括它们,因此它必须是一年_周之间的差异。直接在date1和date2计算周差异,而不将其转换为字符
dd1$week_diff <- difftime(dd1$date1, dd1$date2, units = "weeks")
head(dd1)
date1 date2 week_diff
1 2015-01-02 2016-03-02 -60.71429 weeks
2 2015-01-03 2016-03-03 -60.71429 weeks
3 2015-01-04 2016-03-04 -60.71429 weeks
4 2015-01-05 2016-03-05 -60.71429 weeks
5 2015-01-06 2016-03-06 -60.71429 weeks
6 2015-01-07 2016-03-07 -60.71429 weeks
直接计算date1和date2的周差,而不将其转换为字符
dd1$week_diff <- difftime(dd1$date1, dd1$date2, units = "weeks")
head(dd1)
date1 date2 week_diff
1 2015-01-02 2016-03-02 -60.71429 weeks
2 2015-01-03 2016-03-03 -60.71429 weeks
3 2015-01-04 2016-03-04 -60.71429 weeks
4 2015-01-05 2016-03-05 -60.71429 weeks
5 2015-01-06 2016-03-06 -60.71429 weeks
6 2015-01-07 2016-03-07 -60.71429 weeks
使用strftime后,您没有年-周对象,您有字符串。使用strftime后,您没有年-周对象,您有字符串。