我正在尝试围绕测量时间段进行一些测试。我想增加测量箱的大小(即 1 个月与 2 个月等)。
我有一个带有日期 seq() 的数据框,它工作正常我的问题是将日期增加一个月、一周等。
df1 <- data.frame(id = 1:20, date1 = seq(as.Date('2012-01-01'),by = 'month', len = 20))
df1$date2 <- df1$date1 + 30
如果我想要每个月或每周的第一天,这显然是错误的。是否有针对此类问题的功能或包?
编辑:
这个 :
seq( x, by = "month", length.out = 1)
似乎适用于单个单元格,但不适用于列,因为它返回一个数字:
df1$date2 <- sapply(df1$date1, function(x) seq( x, by = "month", length.out = 1))
> head(df1)
id date1 date2
1 1 2012-01-01 15340
2 2 2012-02-01 15371
3 3 2012-03-01 15400
4 4 2012-04-01 15431
5 5 2012-05-01 15461
6 6 2012-06-01 15492