将秒数转换为 minutes:seconds

Convert seconds to minutes:seconds

我有以下数据框

case_nr    duration_in_seconds
1.         12.3
2.         6.7
3.         140.5

我想要以下输出

case_nr    duration_in_minutes_seconds
1.         00:12
2.         00:07
3.         02:20

如何在R中使用包实现:

library(dplyr)
library(lubridate)
library(stringr)

非常感谢

基础 R:

paste0(df$duration_in_seconds %/% 60,":",floor(df$duration_in_seconds %% 60))
"0:12" "0:6"  "2:20"

数据:

df <- read.table(text = "case_nr    duration_in_seconds
1.         12.3
2.         6.7
3.         140.5",header = T)

另一种选择是as_hms

library(hms)
as_hms(df1$duration_in_seconds)

as.ITime

library(data.table)
as.ITime(df1$duration_in_seconds)
#[1] "00:00:12" "00:00:06" "00:02:20"

数据

df1 <- structure(list(case_nr = c(1, 2, 3), duration_in_seconds = c(12.3, 
6.7, 140.5)), class = "data.frame", row.names = c(NA, -3L))