使用 R 包 lubridate 转换字符日期无法解析
Converting character dates with R package lubridate fails to parse
我尝试将以下字符向量转换为日期 class。
> library(lubridate)
> unemployment_rate$month
[1] "2017-1-1" "2017-2-1" "2017-3-1" "2017-4-1" "2017-5-1" "2017-6-1" "2017-7-1" "2017-8-1" "2017-9-1" "2017-10-1" "2017-11-1" "2017-12-1"
[13] "2016-1-1" "2016-2-1" "2016-3-1" "2016-4-1" "2016-5-1" "2016-6-1" "2016-7-1" "2016-8-1" "2016-9-1" "2016-10-1" "2016-11-1" "2016-12-1"
但是当我尝试使用 lubridate
包转换日期时,我得到以下结果和警告消息:
> unemployment_rate$month <- ymd(unemployment_rate$month, "%Y-%m-%d")
Error in `$<-.data.frame`(`*tmp*`, "month", value = c(17167, 17198, 17226, :
replacement has 25 rows, data has 24
In addition: Warning message:
1 failed to parse.
我不明白为什么 replacement has 25 rows
而数据实际上有 24 行(两年),而且哪个日期如此不同以至于 1 failed to parse.
?
可能知道的有用的东西,我创建了最初必须创建(连接和 month.abb
)month
向量我自己来自:两列,一个月列格式为 "jan', "feb " 等以及格式为“2016”和“2017”的年份列。
你有一个长度为 24 的向量,但你要添加 "%Y-%m-%d"
作为第 25 个日期。 ymd()
无法解析 "%Y-%m-%d"
> lubridate::ymd("2017-1-1")
[1] "2017-01-01"
> lubridate::ymd("2017-1-1", "%Y-%m-%d")
[1] "2017-01-01" NA
Warning message:
1 failed to parse.
我尝试将以下字符向量转换为日期 class。
> library(lubridate)
> unemployment_rate$month
[1] "2017-1-1" "2017-2-1" "2017-3-1" "2017-4-1" "2017-5-1" "2017-6-1" "2017-7-1" "2017-8-1" "2017-9-1" "2017-10-1" "2017-11-1" "2017-12-1"
[13] "2016-1-1" "2016-2-1" "2016-3-1" "2016-4-1" "2016-5-1" "2016-6-1" "2016-7-1" "2016-8-1" "2016-9-1" "2016-10-1" "2016-11-1" "2016-12-1"
但是当我尝试使用 lubridate
包转换日期时,我得到以下结果和警告消息:
> unemployment_rate$month <- ymd(unemployment_rate$month, "%Y-%m-%d")
Error in `$<-.data.frame`(`*tmp*`, "month", value = c(17167, 17198, 17226, :
replacement has 25 rows, data has 24
In addition: Warning message:
1 failed to parse.
我不明白为什么 replacement has 25 rows
而数据实际上有 24 行(两年),而且哪个日期如此不同以至于 1 failed to parse.
?
可能知道的有用的东西,我创建了最初必须创建(连接和 month.abb
)month
向量我自己来自:两列,一个月列格式为 "jan', "feb " 等以及格式为“2016”和“2017”的年份列。
你有一个长度为 24 的向量,但你要添加 "%Y-%m-%d"
作为第 25 个日期。 ymd()
无法解析 "%Y-%m-%d"
> lubridate::ymd("2017-1-1")
[1] "2017-01-01"
> lubridate::ymd("2017-1-1", "%Y-%m-%d")
[1] "2017-01-01" NA
Warning message:
1 failed to parse.