r - 查找 x 年第 x 周的第一天
问题描述
有没有办法用包 lubridate 找到 x 年 x 周的第一天?
例如,我有这个数据:某年的周数(例如 1988 年的第 33 周),我想将其转换为如下数据:日/月/年(例如 1988 年 8 月 15 日)。
Missing_day <- c("33/1988", "37/1991", "37/1992",
"41/1994", "15/1997", "18/2001",
"50/2001", "16/2002", "35/2004",
"5/2012", "50/2012", "8/2013",
"36/2013", "51/2017")
谢谢
解决方案
请注意这里的讨论:
- 指定星期几
- 确保您了解 R 枚举一年中周数的不同方式
library(dplyr)
library(stringr)
# Using Lubridate per your request
library(lubridate)
tibble(week_year = Missing_day) %>%
mutate(
day_month_year = format(lubridate::parse_date_time(
paste(
str_extract(string = week_year, pattern = "^\\d+"),
str_extract(string = week_year, pattern = "\\d*$"),
'Mon',
sep =
"/"
), 'W/Y/a'
), "%d/%m/%Y")
)
# A tibble: 14 x 2
# week_year day_month_year
# <chr> <chr>
# 1 33/1988 15/08/1988
# 2 37/1991 16/09/1991
# 3 37/1992 14/09/1992
# 4 41/1994 10/10/1994
# 5 15/1997 14/04/1997
# 6 18/2001 30/04/2001
# 7 50/2001 10/12/2001
# 8 16/2002 22/04/2002
# 9 35/2004 30/08/2004
# 10 5/2012 30/01/2012
# 11 50/2012 10/12/2012
# 12 8/2013 25/02/2013
# 13 36/2013 09/09/2013
# 14 51/2017 18/12/2017
# Using Base R
tibble(week_year = Missing_day) %>%
mutate(
day_month_year = format(as.Date(
paste(
1,
str_extract(string = week_year, pattern = "^\\d+"),
str_extract(string = week_year, pattern = "\\d*$"),
sep = "/"
), "%w/%W/%Y"
), "%d/%m/%Y")
)
# A tibble: 14 x 2
# week_year day_month_year
# <chr> <chr>
# 1 33/1988 15/08/1988
# 2 37/1991 16/09/1991
# 3 37/1992 14/09/1992
# 4 41/1994 10/10/1994
# 5 15/1997 14/04/1997
# 6 18/2001 30/04/2001
# 7 50/2001 10/12/2001
# 8 16/2002 22/04/2002
# 9 35/2004 30/08/2004
# 10 5/2012 30/01/2012
# 11 50/2012 10/12/2012
# 12 8/2013 25/02/2013
# 13 36/2013 09/09/2013
# 14 51/2017 18/12/2017
推荐阅读
- python-3.x - 如何将具有对象数据类型的时间纳秒列转换为日期时间?
- javascript - Javascript仅在循环中第一次工作
- javascript - 在用户键入时更改标签中单词的每个字母。我可以使用 JS 或 CSS 来实现吗?
- c# - Microsoft.Win32.TaskScheduler AllTasks 无法正常工作
- java - 使用 Firebase 在 Android Studio 中验证 OTP 时应用程序崩溃
- angular - Angular cloudinary 自动播放具有响应宽度/高度的视频
- c++ - CMake 链接器找不到不以“lib”开头的库
- html - 占 2 行的短文本
- javascript - 如何从嵌套数组动态和递归地呈现列表项?
- python - 从字典中附加行数据似乎“泄漏”