POSIX格式的日期和时间

时间:2017-08-10 02:28:53

标签: r lubridate

我正在将这个从csv文件读到R

df< -

ID   DATE         TIME
1    10/14/2000    8:30:05
2    02/13/2001    12:05:05

我无法将其转换为POSIX格式的日期和时间。

df <-
ID   DATE         TIME        DATETIMEPOSIX
1    10/14/2000    8:30:05    2000-10-14 8:30:05
2    02/13/2001    01:05:05   2001-02-13 13:05:05   

我试过这个但是得到了NAs

df$DateTime <- paste(df$DATE, df$TIME)
df$DateTimePOSIX <- strptime(df$DateTime,  format = "%Y-%m-%d %H:%M:%S")

1 个答案:

答案 0 :(得分:1)

format参数需要是它读取的格式,而不是你想要输出的格式。

另外,我假设你的日期组件是美国版的&#39; mm / dd / yyyy&#39;

考虑

DateTime <- "10/14/2000 8:30:05"

as.POSIXct(DateTime, format = "%m/%d/%Y %H:%M:%S")
"2000-10-14 08:30:05 AEDT"

所以你想要

df$DateTimePOSIX <- as.POSIXct(df$DateTime,  format = "%m/%d/%Y %H:%M:%S")

df
#   ID       DATE     TIME            DateTime       DateTimePOSIX
# 1  1 10/14/2000  8:30:05  10/14/2000 8:30:05 2000-10-14 08:30:05
# 2  2 02/13/2001 12:05:05 02/13/2001 12:05:05 2001-02-13 12:05:05