用R每15分钟创建一个时间系列
问题描述:
我每15分钟创建一行时间系列(POSIXct或dttm列)时出现问题。用R每15分钟创建一个时间系列
东西会看起来像这样为2015年1月1日和2016年12月31日之间每15分钟(这里月/日/年时:分):
1/15/2015 0:00
1/15/2015 0:15
1/15/2015 0:30
1/15/2015 0:45
1/15/2015 1:00
一个循环开始的01/01日期/ 2015 0:00,然后加15分钟直到2016年12月31日23:45?
有没有人有这样一个轻松完成的想法?
谢谢!
答
有点容易阅读
library(lubridate)
seq(ymd_hm('2015-01-01 00:00'),ymd_hm('2016-12-31 23:45'), by = '15 mins')
答
intervals.15.min <- 0 : (366 * 24 * 60 * 60/15/60)
res <- as.POSIXct("2015-01-01","GMT") + intervals.15.min * 15 * 60
res <- res[res < as.POSIXct("2016-01-01 00:00:00 GMT")]
head(res)
# "2015-01-01 00:00:00 GMT" "2015-01-01 00:15:00 GMT" "2015-01-01 00:30:00 GMT"
tail(res)
# "2015-12-31 23:15:00 GMT" "2015-12-31 23:30:00 GMT" "2015-12-31 23:45:00 GMT"
+0
我是不是能够得到它是如何工作的,但它的工作。如果你稍微解释一下就太棒了。 –
+1
首先,我创建了一个全年的秒数为15的矢量,之后,我只是将此矢量添加到开始日期以获取时间戳记的矢量 – Bulat
'?seq.Date' .... –