R преобразование даты для нескольких типов данных - PullRequest
0 голосов
/ 23 октября 2019

Достаточно просто преобразовать даты Excel в даты R с помощью функции as.Date():

as.Date(12345, origin = "1899-12-30")
#> [1] "1933-10-18"

Как преобразовать следующие данные в класс дат R?

as.Date(c("-", "TBD", NA, 12345), origin = "1899-12-30")
#> Error in charToDate(x) : 
#>   character string is not in a standard unambiguous format

вывод будет выглядеть так. Если это не дата в Excel, просто отметьте ее NA.

#> [1] NA
#> [2] NA
#> [3] NA
#> [4] "1933-10-18"

1 Ответ

1 голос
/ 23 октября 2019

Фронт:

v <- c("-", "TBD", NA, 12345)
as.Date(as.integer(v), origin="1899-12-30")
# Warning in as.Date(as.integer(c("-", "TBD", NA, 12345)), origin = "1899-12-30") :
#   NAs introduced by coercion
# [1] NA           NA           NA           "1933-10-18"

Пока у вас есть c("-", ..., 12345), 12345 никогда не будет совпадать, поскольку оно приведено к character в векторе. Единственная причина, по которой вышеприведенный трюк работает, заключается в том, что он отменяет это принуждение.

...