随着时间而变为“因素”

时间:2018-03-17 17:14:26

标签: r

如何将值从Factor转换为time?我尝试过使用lubridate包但没有成功。

我有一个数据框,其中包含“时间”列,其中包含类似值的08:00:00。然后使用

phsb1 <- phsb %>%
   dplyr::mutate(time = lubridate::hm(time))

导致了一个有6个插槽的课程 数据年月日小时和分钟

任何能够获得08:00类似值的帮助都将非常感激。 关于如何处理“时间”的更多信息或建议将是非常棒的。我发现了很多关于“约会”的内容,但几乎与“时间”无关。

1 个答案:

答案 0 :(得分:0)

我认为OP希望转换包含H:M:S' format to H:M`格式数据的列。

选项#1 :只需将substring包含hourmin的一部分,使用sub作为:

library(dplyr)
phsb1 <- phsb %>%
       mutate(time = sub("(\\d{2}:\\d{2}):\\d{2}","\\1", as.character(time)))

选项#2 :使用parse_date_time中的lubridate作为。

library(lubridate)
library(dplyr)
phsb1 <- phsb %>%
       mutate(time = format(parse_date_time(as.character(time), "HMS"), format = "%H:%M"))

#Example
format(parse_date_time("08:05:00", "HMS"), format = "%H:%M")
#"08:05"