use*_*688 2 datetime r sequence
我想创建一个列,其中日期/时间序列每小时增加一年或一个月(例如).我使用这样的代码来生成这个序列:
start.date<-"2012-01-15"
start.time<-"00:00:00"
interval<-60 # 60 minutes
increment.mins<-interval*60
x<-paste(start.date,start.time)
for(i in 1:365){
print(strptime(x, "%Y-%m-%d %H:%M:%S")+i*increment.mins)
}
Run Code Online (Sandbox Code Playgroud)
但是,我不确定如何指定日期和小时序列的范围.另外,我在处理第一个小时"00:00:00"时遇到了问题?不确定指定一个月,一年等的日期/时间序列长度的最佳方法是什么?任何建议将不胜感激.
我强烈建议您使用POSIXct数据类型.这样您可以seq毫无问题地使用,并根据需要使用这些数据.
start <- as.POSIXct("2012-01-15")
interval <- 60
end <- start + as.difftime(1, units="days")
seq(from=start, by=interval*60, to=end)
Run Code Online (Sandbox Code Playgroud)
现在,您可以使用时间戳向量执行任何操作.