2015-08-31 16 views
3

我想從給定日期(2015年7月31日)開始,按季度向後生成一系列日期。而不是讓四月的最後一天,我得到五月的第一天,如下:無法在R中正確生成季度序列

> seq(as.Date('2015-07-31'), as.Date('2014-09-30'), by = '-3 month') 
[1] "2015-07-31" "2015-05-01" "2015-01-31" "2014-10-31" 

我也試過路過-quarterby選項,但我得到了以下錯誤:

> seq(as.Date('2015-07-31'), as.Date('2014-09-30'), by = '-quarter') 
Error in seq.Date(as.Date("2015-07-31"), as.Date("2014-09-30"), by = "-quarter") : 
invalid string for 'by' 

雖然我可以檢查一個月的日子,並相應地更正日期已被過度調整到錯誤的月份,我想知道是否存在一個簡短的代碼片段來執行上述操作?

+0

什麼是從上面的操作所需輸出? –

+0

@DavidArenburg [1]「2015-07-31」「2015-04-31」「2015-01-31」「」2014-10-31「 –

回答

3

速戰速決將採取以下月的第一天,一個。減去:

seq(as.Date('2015-08-01'), as.Date('2014-10-01'), by = '-3 month') -1 

[1] "2015-07-31" "2015-04-30" "2015-01-31" "2014-10-31"