POSIXlt 12小时时间没有前导零

时间:2015-09-25 22:05:23

标签: r

我试图消除12小时时间值的前导零,但出于图形目的,结果必须是POSIXlt值。因此,我不能使用正则表达式,因为它们会将结果保留为字符而不是POSIXlt值。

我的时间价值以角色开头。

a <- "02:57"

然后我使用strptime将字符转换为POSIXlt类。在strptime内,我使用转换规范%l,根据strptime帮助,显示&#34; 12小时制时间,单个数字前面有一个空格&#34;。

b <- strptime(x = a, tz = "UTC", format = "%l")

变量b是POSIXlt值,由&#34;当前日期&#34;组成。 +&#34; 02:57:00&#34; +&#34;当地时区&#34;。我可以使用日期和时区,但12小时时间值的前导零仍然存在。

如何消除12小时时间值的前导零并仍然保留POSIXlt类?

我很欣赏任何见解。

1 个答案:

答案 0 :(得分:0)

我会使用lubridate,这是一个用于处理POSIXlt时间对象的优秀软件包。

library(lubridate)

a <- "02:57"
b <- hm(a)

产量

> b
[1] "2H 57M 0S"

没有讨厌的0而且还有很多其他时间的好处。祝你好运。