我希望任何一年都能得到去年的同一天。我怎样才能最好地在 R 中做到这一点。例如,给定星期日 2010/01/03,我想获取前一年同一周的星期日。
# "Sunday"
weekdays(as.Date("2010/01/03", format="%Y/%m/%d"))
# "Saturday"
weekdays(as.Date("2009/01/03", format="%Y/%m/%d"))
要查找一年前的同一个工作日,只需从给定日期中减去 52 周或 364 天:
d <- as.Date("2010-01-03")
weekdays(d)
#[1] "Sunday"
d - 52L * 7L
#[1] "2009-01-04"
weekdays(d - 52L * 7L)
#[1] "Sunday"
请注意,日历年有 365 天(闰年有 366 天),比 52 周多出一天或两天。所以日历日期一年前的同一个工作日向前移动了一两天。 (或者,它解释了为什么新年前夜总是在不同的工作日。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)