【发布时间】:2021-06-27 15:21:00
【问题描述】:
我目前正在处理一个包含格式混乱的日期的列表。我试图将它们清理成列表中的两列日期/时间,而不必从列表中提取数据框。清除日期后,我想从集合中获取最小/最大日期并创建一个包含所有日期的字符串。
我列表中的日期格式为 2019-07-20T17:12:08+10:00,我已经能够通过从列表中提取第一个数据框但不在列表中来清理它们,即:Y <- as_tibble(X[[1]])
#Clean Date Values in Y
Y <- Y %>%
mutate(Date = str_replace_all(created_at, "T", " ")) %>%
separate(Date, into = c("Date","Time"), sep = " ")
#Obtain the Min/Max to get date range of datasets and create a Calendar tibble
Dates <- seq(min(X$dates$Date), min(X$dates$Date), by="days")
Calendar <- as_tibble(Date)
在保留列表中的信息并从该列表中提取日期范围的同时运行 Clean Date 流程的最佳方法是什么?
示例代码:
X <- list(dates = structure(list(created_at = c("2019-06-04T13:25:57+10:00",
"2019-06-05T06:14:29+10:00", "2019-07-09T19:20:18+10:00", "2019-07-12T11:57:28+10:00",
"2019-07-16T01:10:49+10:00", "2019-07-20T17:12:08+10:00"), cancelled_at = c("2019-06-06T17:46:49+10:00",
"2019-06-05T08:37:32+10:00", NA, NA, NA, NA)), row.names = c(NA,
-6L), class = c("tbl_df", "tbl", "data.frame"), .internal.selfref = <pointer: 0x000001b0851f1ef0>),
sent = c("T", "T", "T", "T", "T", "T"))
【问题讨论】: