我创建了一个类似这样的文件:
> filesInside
Date Time
1 01:09:2013 10:35:49.997
2 01:09:2013 10:35:50.197
我怎么可能使用
创建一个函数as.POSIXct()
我应该得到这样的东西:
> as.POSIXct("2013-09-01 10:35:50")
[1] "2013-09-01 10:35:50 NZST"
如何将其作为一种功能?
到目前为止我的代码:
DateTime <- as.POSIXct(paste(filesInside$Date, filesInside$Time), format="%Y%m%d %H%M%S")
请欣赏一些帮助。干杯
答案 0 :(得分:3)
你可以试试这个。 format
中的日期时间组件和分隔符的顺序应该反映要转换的对象中的那些。另请参阅?strptime
。
with(filesInside,
as.POSIXct(paste(Date, Time),
format = "%d:%m:%Y %H:%M:%S",
tz = "NZ"))
# [1] "2013-09-01 10:35:49 NZST" "2013-09-01 10:35:50 NZST"
答案 1 :(得分:2)
library(lubridate)
dmy_hms(apply(filesInside, 1, paste, collapse=" "), tz="NZ")
# [1] "2013-09-01 10:35:49 NZST" "2013-09-01 10:35:50 NZST"
lubridate
这里很简单,特别是它的dmy_hms
,ymd
等函数的集合。
要正确粘贴行,只需使用apply(<data.frame>, 1, paste, collapse=" ")