从具有内置函数的整数创建有效时间

Qbi*_*bik 1 r

有没有办法8:46:01从整数创建84601而不使用R中的模运算?像其他语言掩码格式的东西:format(84600, "HHMMSS")?否则需要模数偏差和一些凌乱的公式

Ben*_*ker 5

format(strptime("084601","%H%M%S"),"%H:%M:%S")
Run Code Online (Sandbox Code Playgroud)

有效,但你必须确保你有一个两位数的小时,例如:

x <- "84601"
Run Code Online (Sandbox Code Playgroud)

在任何5位数字字符串前加零:

xx <- gsub("([0-9]{5})","0\\1",x)
Run Code Online (Sandbox Code Playgroud)

(或者,正如@Frank在评论中所说,sprintf("%06d", x)将适用于整数...)

兑换:

format(strptime(xx,"%H%M%S"),"%H:%M:%S")
Run Code Online (Sandbox Code Playgroud)

(如果你没有,format()你会得到一个日期时间字符串,当前日期填写...)