首页 > 解决方案 > 从半小时的日期时间创建十进制小时列

问题描述

我想使用 POSIXct 格式的半小时日期时间列创建一个包含十进制小时的新列。

基本上我的日期时间列是这样的:“2015-09-01 09:00:00, 2015-09-01 09:30:00, 2015-09-01 10:00:00”等...

我希望新的十进制小时列看起来像这样:“9、9.5、10”等...

谢谢!

标签: rdecimalposixcthour

解决方案


我以你的一个时代为例。

time <- as.POSIXct("2015-09-01 09:30:00", tz = "GMT")
(as.numeric(time) %% 86400) / 3600
[1] 9.5

该代码提供了所需的输出。

有关原因,请通过以下链接查看 Matthew Lundberg 的回答: Extracting time from POSIXct


推荐阅读