如何用R表示时间间隔

时间:2018-11-01 19:54:27

标签: r time

我想代表从上午4:00:00开始至上午4:00:00(例如4:10; 4:20; 4:30)以10分钟为间隔的24小时时间。在我使用Posixct编写的代码上方,每小时表示一次-如何以10分钟为间隔表示时间?

谢谢

z<-c("04:00:00")
j<-0
time_interval<-NULL 

for (i in 1:25) #24 denotes interval of each hour plus one for 4:00 AM again 
{
  time_interval[i]<-as.POSIXct(z,format="%H:%M:%S")+j
  j<-j+60*60 # denotes number of seconds in each hour 
}

time_interval<-as.POSIXct(time_interval,origin = "1966-01-01")`enter code here`

1 个答案:

答案 0 :(得分:1)

以下内容仅使用基数R,并且可以执行您想要的操作。

z <- "04:00:00"
start <- paste(Sys.Date(), z)
end <- paste(Sys.Date() + 1, z)
w <- seq(as.POSIXct(start), as.POSIXct(end), by = "10 mins")
time_interval <- format(w, format = "%H:%M:%S")

head(time_interval, 10)
# [1] "04:00:00" "04:10:00" "04:20:00" "04:30:00" "04:40:00"
# [6] "04:50:00" "05:00:00" "05:10:00" "05:20:00" "05:30:00"