将具有特殊格式的字符更改为日期

时间:2016-01-03 01:45:18

标签: r

如何将看似"01.01.2016 16:33:03"的字符更改为日期?我已经尝试过了:

data$Date <- as.Date(data$Date, origin = "%d.%m.%Y %H:%M:%S") 

但只是收到character string is not in a standard unambiguous format

的错误消息

2 个答案:

答案 0 :(得分:1)

尝试这样的事情:

this = "01.01.2016 16:33:03"
as.POSIXct(this, format = "%m.%d.%Y %H:%M:%S")

绝对查看?POSIXct以获取完整文档。可能让您感到困惑的要点是,您需要将format定义为字符串当前的格式,而不是您希望的格式。

在您看到它的同时,还要查看?as.Datezoo包,其中包含一些简洁的功能,例如as.yearmon()

答案 1 :(得分:0)

另一个选项是lubridate包。

library(lubridate)
x <- '01.01.2016  16:33:03'
y <- mdy_hms(x)

然后,您可以使用month(y)day(y)等来访问日期的特定部分。