Кто-нибудь знает способ анализа дат с помощью угадывания с использованием одного формата - и не с помощью с использованием lubridate
или любого другого пакета?
Это не дубликат, поскольку я не могу найти никакого ответа, который бы касался этого за пределами пакетов.
Например, перед переключением на guess_formats
я иногда использовал функции, подобные приведенным ниже, для идентификации форматов ymd
или dmy
и преобразования их в ymd
.
to_ymd <- function(x) {
x <- gsub("[^0-9]", "/", x)
is_dmy <- any(grepl("\\/", substr(x, 6, 6)))
if (is_dmy == TRUE) {
x <- as.Date(as.character(x), format = "%d/%m/%Y")
} else {
x <- as.Date(as.character(x), format = "%Y/%m/%d")
}
return(x)
}
Однако, это довольно медленно, и, конечно же, оно не является надежным, поскольку не учитывает другие возможности.
Кто-нибудь знает более быстрый base R
способ угадывания и унификации форматов (наиболее важно ymd
, dmy
, но также mdy
, форматов без разделителей и т. Д.)?