我需要将时间“01:15:55 AM”转换为时间。 我在考虑使用chron库,但是我不知道如何使用chron库。
chron(times = "01:15:55 AM", format = "%I:%M:%S %p")
Error in parse.format(format) : unrecognized format %I:%M:%S %p
有什么想法吗?我很高兴尝试其他图书馆
答案 0 :(得分:3)
一个选项是使用strptime
来解析,然后使用format
结果,这样你就可以将它变成一个漂亮的chron::times
对象:
library(chron)
times(format(strptime("01:15:55 PM", format = "%I:%M:%S %p"), "%H:%M:%S"))
# [1] 13:15:55
答案 1 :(得分:1)
在R中处理日期和时间对象的规范方法是使用POSIX
函数,例如:
> (time.POSIX<-strptime("01:15:55 AM", format = "%I:%M:%S %p"))
[1] "2016-03-31 01:15:55 BRT"
> class(time.POSIX)
[1] "POSIXlt" "POSIXt"
strptime
函数以及与POSIX日期一起使用的所有其他函数(例如format
(用于打印))接受您正在使用的格式字符串。
这里的问题是这个数据不是时间本身,而是日期和时间,日期部分隐含地创建为&#34;今天&#34;。因此,您可以在固定的参考日期创建此时间对象,例如,2000-01-01。
另一方面,如果您想使用chron软件包......它们不符合这些格式规范。 chron
手册仅指定m,d,y,h,m和s。
您可能必须编写一个了解AM / PM并修复它的包装器。
答案 2 :(得分:1)
{{1}}