将周数转换为数据框中的日期
Convert Week number to date in data frame
我有以下数据集
Week Year
1 2019
2 2019
1 2020
2 2020
我想添加一个显示一周开始日期的列(从星期日开始)
所以,我的理想输出是
Week Year Date
1 2019 06/01/2019
2 2019 13/01/2019
1 2020 05/01/2020
2 2020 12/01/2010
我试过下面的解决方法
library (lubridate)
if (df$Year ==2019) {df$Date = parse_date_time(paste(2019, df$Week, 'Sun', sep=" "),'Y/W/a')}
if (df$Year ==2019) {df$Date = parse_date_time(paste(2020, df$Week, 'Sun', sep=" "),'Y/W/a')}
但是,我收到 "failed to parse" 的警告信息。任何提示将不胜感激
您可以使用 as.Date
本身在 base R 中执行此操作。
根据您的尝试,您的语言环境似乎是英语,因此您可以尝试:
as.Date(paste(df$Week, df$Year, 'Sun'), '%U %Y %a')
#[1] "2019-01-06" "2019-01-13" "2020-01-05" "2020-01-05"
我有以下数据集
Week Year
1 2019
2 2019
1 2020
2 2020
我想添加一个显示一周开始日期的列(从星期日开始)
所以,我的理想输出是
Week Year Date
1 2019 06/01/2019
2 2019 13/01/2019
1 2020 05/01/2020
2 2020 12/01/2010
我试过下面的解决方法
library (lubridate)
if (df$Year ==2019) {df$Date = parse_date_time(paste(2019, df$Week, 'Sun', sep=" "),'Y/W/a')}
if (df$Year ==2019) {df$Date = parse_date_time(paste(2020, df$Week, 'Sun', sep=" "),'Y/W/a')}
但是,我收到 "failed to parse" 的警告信息。任何提示将不胜感激
您可以使用 as.Date
本身在 base R 中执行此操作。
根据您的尝试,您的语言环境似乎是英语,因此您可以尝试:
as.Date(paste(df$Week, df$Year, 'Sun'), '%U %Y %a')
#[1] "2019-01-06" "2019-01-13" "2020-01-05" "2020-01-05"