自动填充周日期

时间:2015-04-14 13:35:02

标签: r date

我试图找到一种方法来自动填充任何给定年份的开始/结束周日期。例如。 2015年4月12日 - 2015年4月18日,2015年4月19日 - 2015年4月25日,2015年4月26日 - 2015年5月2日。我想我可以明确地计算出来,但它并不是很优雅。提前谢谢!

1 个答案:

答案 0 :(得分:6)

查找一年中第一周的第一天和最后几天:阅读%W下的%w%V?strptime规范,了解更多详情。请注意,strptime约定非常挑剔(例如,您需要正确的数字位数),可能依赖于操作系统,并且可能依赖于语言环境......

firstday <- as.Date(strptime("2010-01-0",format="%Y-%W-%w")) ## Sunday 
lastday <- as.Date(strptime("2010-01-6",format="%Y-%W-%w"))  ## Saturday

现在从那些日期开始设置日期序列:

seq.Date(firstday,as.Date("2010-12-31"),by="1 week")
seq.Date(lastday,as.Date("2010-12-31"),by="1 week")

您可以使用例如paste0(year,"-01-0")如果你想更普遍地这样做(没有对年份进行硬编码)。