我有一列具有不同的日期格式:
我尝试使用anytime函数解决此问题,但第二种格式却不适用。
"countries.1.name": FieldValue.arrayRemove("Ottawa")
反正有这样做吗?
答案 0 :(得分:0)
编辑-我在使用dmy_hms
的地方输入dmy_hm
时有错字。
此方法依赖于字符串中有关使用哪种格式的线索。在这里,我假设所有日期都在2010年至2019年末之间,并且日-月-年字符串在日期的各个部分之间都使用点。
library(tidyverse); library(lubridate);
dates %>%
enframe() %>%
# Edit -- better solution
mutate(dates = case_when(value %>% str_detect("\\d{4}\\-") ~ ymd_hms(dates),
TRUE ~ dmy_hm(dates)))
# A tibble: 4 x 3
name value dates
<int> <chr> <dttm>
1 1 2017-01-23 00:00:00.000 2017-01-23 00:00:00
2 2 2017-1-23 00:00:00.000 2017-01-23 00:00:00
3 3 20.02.2017 11:15 2017-02-20 11:15:00
4 4 2.2.2017 11:15 2017-02-02 11:15:00
# old solution
mutate(dates = case_when(value %>% str_detect(".201") ~ dmy_hm(dates),
TRUE ~ ymd_hms(dates)))