将H M S转换为R中的H:mm

将H M S转换为R中的H:mm,r,R,我有一个由以下格式的时间组成的数据帧: Time 9H 30M 0S 10H 0M 0S 10H 30M 0S 我想把这个转换成 Time 9:30 10:00 10:30 我不知道怎么做。有人能帮我吗 编辑: 假设它存储在df中,那么我使用: X <- X %>% mutate(hour = hour(Time), minute = minute(Time)) %>% unite(time, hour, minute, sep = "

我有一个由以下格式的时间组成的数据帧:

Time 
9H 30M 0S
10H 0M 0S
10H 30M 0S
我想把这个转换成

Time
9:30
10:00
10:30
我不知道怎么做。有人能帮我吗

编辑:

假设它存储在df中,那么我使用:

X <- X %>%
  mutate(hour = hour(Time),
         minute = minute(Time)) %>%
  unite(time, hour, minute, sep = ":") 
X%
突变(小时=小时(时间),
分钟=分钟(时间))%>%
统一(时间、小时、分钟、九月=“:”)
这给了我想要的输出


然而,我想知道是否有更快的方法来获得所需的结果。

您可以将其转换为
POSIXct
,并使用
格式
获得所需的输出

format(as.POSIXct(x$Time, format="%HH %MM %SS"), "%H:%M")
#[1] "09:30" "10:00" "10:30"
数据:

x
x <- data.frame(Time = c("9H 30M 0S", "10H 0M 0S", "10H 30M 0S"))