如何在R中创建时间序列?

时间:2015-03-30 19:25:10

标签: r time-series

给定数据框:

'data.frame':   2122 obs. of  2 variables:
 $ hour : POSIXlt, format: "2015-01-01 00:00:00" "2015-01-01 01:00:00" ...
 $ z    : int  756 693 675 369 224 487 595 705 573 713 ...

hour增加1小时,如何创建time series

我想要一个系列,每天24条记录。

我知道我必须遗漏一些微不足道的东西。 我试过了as.ts(f$z, start=c(hd$hour[1],1), end=c(tail(f$hour,1),1)))。不。

感谢。

PS。下一步是将系列聚合成每日一个......

1 个答案:

答案 0 :(得分:1)

library(ggplot2)
f<-data.frame(hour=seq(as.POSIXct("2015-01-01 00:00:00"),
                   as.POSIXct("2015-01-02 23:00:00"),by="hour"),
              z=seq(1,48,by=1))

f$hour<- format(f$hour, format="%Y/%m/%d %H")

ggplot(f, aes(x=hour, y=z))+
  geom_point(col="brown1",size=1)

对于汇总,您可以选择适合您时间的每日格式:

f$hour<- format(f$hour, format="%Y/%m/%d")
result<-aggregate(.~hour,f, sum)