R - 如何将小数转换为 MM:SS.XXX

R - How to convert decimal to MM:SS.XXX

如何使用 R 将 SS.xxx (Seconds.Milliseconds) 转换为 MM:SS.xxx(分钟:Seconds.Milliseconds)?

比如我的输入是

time = 92.180

我想要的输出是

time = 01:32.180

所有时间字段都有 3 位小数。

一个选项是 lubridate 包 - 因为您没有指定输出 class 我包含了一些可能的输出:

package(lubridate)

t <- 92.180
# your output string as character
lubridate::seconds(t) %>% 
  lubridate::as_datetime() %>% 
  format("%M:%OS3") 

# output as period
lubridate::seconds(t) %>% 
  lubridate::as.period()

# output as duration
lubridate::seconds(t) %>% 
  lubridate::as.duration() 

# output as time time
lubridate::seconds(t) %>% 
  lubridate::as.difftime()