R 多种数据类型的日期转换
R Date conversion for multiple data types
使用 as.Date()
函数将 Excel 日期转换为 R 日期非常简单:
as.Date(12345, origin = "1899-12-30")
#> [1] "1933-10-18"
如何将以下内容转换为 R 日期 class?
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"
前面:
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
。上述技巧起作用的唯一原因是它解除了强制。
使用 as.Date()
函数将 Excel 日期转换为 R 日期非常简单:
as.Date(12345, origin = "1899-12-30")
#> [1] "1933-10-18"
如何将以下内容转换为 R 日期 class?
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"
前面:
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
。上述技巧起作用的唯一原因是它解除了强制。