在我的R脚本中,当我想计算我使用的函数的运行时间时"‘- Sys.time()函数- Sys.time()difftime(完成,开始)"‘我从这些代码得到的答案是:"时差6.60801分钟;我想查看小时:分钟:秒的时间格式。换句话说:我如何获得以下消息作为运行代码的响应?时差6分36秒;谢谢你的帮助
我们可以使用hms
包中的as_hms
库(hms)
start <- Sys.time()
finish <- Sys.time()
as_hms(difftime(finish, start))
# 00:00:00.00066
您可以使用一些模块化数学并将其放在一个小函数中,例如:
HMS <- (x) sprintf('%03d:%02d:%02d', x %/% 60^2, x %% 60^2 %/% 60, floor(x %% 60^2 %% 60))
t0 <- Sys.time()
t11 <- t0 + 6.60801*60
t12 <- t0 + 25*60^2 + 31*60 + 56.7398
HMS(as.numeric(difftime(t11, t0, units='secs')))
# [1] "000:06:36"
HMS(as.numeric(difftime(t12, t0, units='secs')))
# [1] "025:31:56"