使用R编程将包含AM / PM的因子转换为24小时HH:MM时间格式

时间:2015-02-13 08:22:49

标签: r time

我使用R。

这应该不是一件困难的事情。我想要的只是sintax。 我有一个名为'twyrs'的数据框,其中一列是时间列。 当我上课(twyrs $ TIME)时,它会显示'因素'。 时间格式为“晚上9点”,“00:15 AM”,依此类推。

我需要的是分别采用“21:00”和“00:15”格式的时间。那是24小时HH MM格式。我的时间没有任何秒钟。只有几小时和几分钟。

我试过了

库(克罗恩氏)
x< - chron(次= twyrs $ TIME)

任何帮助?

1 个答案:

答案 0 :(得分:4)

您需要修复“00:15 AM”时间字符串。使用gsub("00:", "12:", x, fixed = TRUE)00替换为12。然后你可以这样做:

x <- factor(c("9:00 PM","00:15 AM", "12:15 AM" ))
y <- as.POSIXct(x, format = "%I:%M %p", tz = "GMT") #read help("strptime")

library(chron)
times(strftime(y, format = "%H:%M:%S", tz = "GMT"))
#[1] 21:00:00 <NA>     00:15:00