lubridate convert format_ISO8601 年-周 (2022-W01)
lubridate convert format_ISO8601 year-Wweek (2022-W01)
我从 RKI 抓取了数据。在 table 中,日期传输符合 ISO8601 标准。目标是稍后使用 R 中的 ggplot 可视化数据。不幸的是,ggplot 无法处理这种格式。日期列中的示例。
library(lubridate)
w <- paste("2021-W", 46:52, sep = "")
w1 <-c("2022-W01")
ww <-c(w,w1)
df_ww<- format_ISO8601(as.Date(ww,format = "%YYYY-W%w“))
str(ww)
chr [1:8] "2021-W46" "2021-W47" "2021-W48" "2021-W49" "2021-W50" "2021-W51" "2021-W52" "2022-W01“
df_ww
[1] NA NA NA NA NA NA NA NA
有解决此问题的想法吗?
尝试:
df_ww <- as.Date(paste0(gsub("\D", "", ww), 1), format="%Y%U%u")
输出:
> df_ww
[1] "2021-11-15" "2021-11-22" "2021-11-29" "2021-12-06" "2021-12-13" "2021-12-20" "2021-12-27" "2022-01-03"
更新:
好的,那么:
df_ww <- gsub("W", "", ww)
输出:
[1] "2021-46" "2021-47" "2021-48" "2021-49" "2021-50" "2021-51" "2021-52" "2022-01"
我从 RKI 抓取了数据。在 table 中,日期传输符合 ISO8601 标准。目标是稍后使用 R 中的 ggplot 可视化数据。不幸的是,ggplot 无法处理这种格式。日期列中的示例。
library(lubridate)
w <- paste("2021-W", 46:52, sep = "")
w1 <-c("2022-W01")
ww <-c(w,w1)
df_ww<- format_ISO8601(as.Date(ww,format = "%YYYY-W%w“))
str(ww)
chr [1:8] "2021-W46" "2021-W47" "2021-W48" "2021-W49" "2021-W50" "2021-W51" "2021-W52" "2022-W01“
df_ww
[1] NA NA NA NA NA NA NA NA
有解决此问题的想法吗?
尝试:
df_ww <- as.Date(paste0(gsub("\D", "", ww), 1), format="%Y%U%u")
输出:
> df_ww
[1] "2021-11-15" "2021-11-22" "2021-11-29" "2021-12-06" "2021-12-13" "2021-12-20" "2021-12-27" "2022-01-03"
更新:
好的,那么:
df_ww <- gsub("W", "", ww)
输出:
[1] "2021-46" "2021-47" "2021-48" "2021-49" "2021-50" "2021-51" "2021-52" "2022-01"