我想根据年份和星期数确定月份。这个问题很独特,因为它缺少这些示例Transform year/week to date object,Convert week number to date中所需的星期几信息。
year <- c("2017", "2017", "2018")
week <- c("37", "53", "01")
month <- lubridate::month(as.Date(paste0(year, "-", week), format = "%Y-%V"))
> month
[1] 9 9 9
由于某种原因,这会为我的向量中的每个元素返回9
。 9月是第一次观察的正确月份,但其余两个月则不能。
预期输出:
> month
[1] 9 12 1
编辑:事实证明,如果不知道星期几,就不可能解决此任务。我将尝试找到一种针对年份/日期的解决方法,以完全避免该问题。
答案 0 :(得分:-2)
尝试一下:
> year <- c(2017, 2017, 2018)
> week <- c(37, 53, 01)
> month <- lubridate::month(as.Date(paste0(year, "-", week, "-", 10), format = "%Y-%U-%u"))
> month
[1] 9 NA 1
在这里获得不适用的原因,因为它将计算直到第52周的月份。