我有一个十进制数:0.8541667
,我希望使用R将其转换为HH:MM格式。我要找的答案是:20:30
。
答案 0 :(得分:10)
试试这个:
R> format(as.POSIXct(Sys.Date() + 0.8541667), "%H:%M", tz="UTC")
[1] "20:30"
R>
我们从日期开始 - 可以是任何日期,因此我们今天使用 - 并添加您想要的分数日。
然后我们将Date类型转换为Datetime对象。
最后,我们格式化Datetime对象的小时和分钟部分,确保将UTC用于时区。
答案 1 :(得分:10)
使用chron
:
chron::times(0.8541667)
#[1] 20:30:00
答案 2 :(得分:1)
带有data.table的一个选项:
> library(data.table)
> structure(as.integer(0.4305556*60*60*24), class="ITime")
[1] "10:20:00"
我们从午夜起将天数转换为秒;强制转换为整数;并应用ITime类。 (ITime从午夜开始使用整数存储的秒数。)
其他资源: