R转换并将字符串拆分为日期和时间?

时间:2018-03-27 08:25:15

标签: r date dataframe

我的df数据框中的datetime列的结构如下:

YYYYmmddhhmmss,例如:" 20171204211500"。

我尝试过使用split和substring,有没有办法快速高效地完成它?

我已经检查了网站上的类似问题,但情况并不相同。

2 个答案:

答案 0 :(得分:4)

我们可以使用as.POSIXct转换为日期时间对象

out <- as.POSIXct(str1, format = "%Y%m%d%H%M%S")
out
#[1] "2017-12-04 21:15:00 IST"

据此,我们可以使用Date

转换为as.Date对象
as.Date(out)

并使用format

提取时间组件
format(out, "%H:%M:%S")

数据

str1 <- "20171204211500"

答案 1 :(得分:2)

使用lubridate包

library (lubridate)

date<- "20171204211500"
date_ok <- ymd_hms(date)
date_ok
[1] "2017-12-04 21:15:00 UTC"

有任何疑问,请告诉我