我目前正在处理使用R的tick数据,我想将日期和时间合并到一个对象中,因为我需要获得一个精确的时间对象来计算我的数据的一些统计数据。以下是我的数据:
date time price flag exchange
2 XXH10 2010-02-02 08:00:03 2787 1824 E
3 XXH10 2010-02-02 08:00:04 2786 3 E
4 XXH10 2010-02-02 08:00:04 2787 6 E
5 XXH10 2010-02-02 08:00:04 2787 1 E
6 XXH10 2010-02-02 08:00:04 2787 1 E
基本上,我想将“date”和“time”列合并为一个。
答案 0 :(得分:63)
使用datetime
创建as.POSIXct
对象:
as.POSIXct(paste(x$date, x$time), format="%Y-%m-%d %H:%M:%S")
[1] "2010-02-02 08:00:03 GMT" "2010-02-02 08:00:04 GMT" "2010-02-02 08:00:04 GMT"
[4] "2010-02-02 08:00:04 GMT" "2010-02-02 08:00:04 GMT"
答案 1 :(得分:3)
当然,额外的包装可以提供更优雅的解决方案(可以说)。使用日期时,它是 lubridate 包:
library(lubridate)
with(x, ymd(date) + hms(time))
应该生成 POSIXlt 向量。