【发布时间】:2019-08-06 22:57:15
【问题描述】:
我想将时间戳从字符转换为时间,但我不想要任何日期。最重要的是,它必须显示毫秒,如 "hh:mm:ss,os"。
如果我使用as.POSIXCT,它总是会在我的时间戳中添加一个日期前缀,这不是我的意图。我还检查了lubridate 包,但我似乎找不到超出“as.hms”的函数,因此它以毫秒为单位显示至少两位数。
使用 POSIXct 的示例
df <-c("01:31:12.20","01:31:14.56","01:31:14.84")
options(digits.secs = 2)
df <- as.POSIXct(df, format="%H:%M:%OS")
这是结果:
[1] "2019-03-15 01:31:12.20 EDT" "2019-03-15 01:31:14.55 EDT"
[3] "2019-03-15 01:31:14.83 EDT"
谢谢。
【问题讨论】:
-
不幸的是它不起作用,因为 chron() 函数格式也是“hh:mm:ss”,它没有毫秒。
-
日期时间也需要日期,如果我理解的话
-
是的。我将编辑“日期”位。
-
好的,那么不清楚你真正想要什么,因为
hms(df)将其转换为Period类 -
@goncaloveiga 您需要日期才能按时执行计算。然后您可以使用
format重新格式化您的数据。