在R中将因子更改为Datetime

时间:2018-09-11 07:36:45

标签: r date datetime

我有一个要在Date中转换的因子变量。当我尝试使用as.Date()时会显示错误:

  

charToDate(x)中的错误:     字符串不是标准的明确格式

我的数据是这些

[1] Aug 31, 2018 Aug 30, 2018 Aug 29, 2018 Aug 28, 2018 Aug 27, 2018 Aug 26, 2018
[7] Aug 25, 2018 Aug 24, 2018 Aug 23, 2018 Aug 22, 2018 Aug 21, 2018 Aug 20, 2018
[13] Aug 19, 2018 Aug 18, 2018 Aug 17, 2018 Aug 16, 2018 Aug 15, 2018 Aug 14, 2018
[19] Aug 13, 2018 Aug 12, 2018 Aug 11, 2018 Aug 10, 2018 Aug 09, 2018 Aug 08, 2018
[25] Aug 07, 2018 Aug 06, 2018 Aug 05, 2018 Aug 04, 2018 Aug 03, 2018 Aug 02, 2018

如何在日期中转换为%d-%m-%Y格式?

3 个答案:

答案 0 :(得分:1)

尝试使用format = "%b %d, %Y"

ss <- c("Aug 31, 2018", "Aug 30, 2018", "Aug 29, 2018", "Aug 28, 2018", "Aug 27, 2018", "Aug 26, 2018")

as.Date(ss, format = "%b %d, %Y")
#[1] "2018-08-31" "2018-08-30" "2018-08-29" "2018-08-28" "2018-08-27"
#[6] "2018-08-26"

要详细了解不同的转换规范(例如"%b""%Y"等)的含义,请查看?strptime

顺便说一句,无需手动将factor转换为character,因为as.Date具有用于factor s的将factor转换的方法到character个向量,请参见as.Date.factor

答案 1 :(得分:0)

在函数中指定格式为日期

as.Date(MyData, format="%b %d, %Y")

答案 2 :(得分:0)

我已经解决了将这段代码Sys.setlocale("LC_TIME", "English")插入控制台的问题!