[R] Hourly data with zoo

Gabor Grothendieck ggrothendieck at gmail.com
Mon Sep 12 12:48:17 CEST 2011


On Mon, Sep 12, 2011 at 1:58 AM, steven mosher <moshersteven at gmail.com> wrote:
> I have date data as a numeric and hourly data in 0 to 2300 hours in a dataframe.
>
> d  <-  rep(20110101,24)
> h  <-  seq(from =  0, to  =  2300, by  = 100)
>
> df  <-  data.frame(LST_DATE  =  d,  LST_TIME  =  h,  data  =  rnorm(24, 0, 1))
>
> S  <-  chron(dates. = as.character(df$LST_DATE), times. =
> paste(as.character(df$LST_TIME/100), ":0:0", sep  = ""),
>           format  = c(dates  =  "Ymd",  times =  "h:m:s"))
> X  <-  zoo(df$data, order.by = S)
>
> And I want to create a regular zoo series,  The above works but its
> pretty ugly. Is there a more elegant way to do this.

You probably want to create a zooreg object:

library(zoo)
library(chron)

zr <- zooreg(rnorm(24), as.chron("2011-01-01"), frequency = 24)

although if you really do want a zoo object that is not a zooreg
object then you can do it like this:

z <- as.zoo(zr)

-- 
Statistics & Software Consulting
GKX Group, GKX Associates Inc.
tel: 1-877-GKX-GROUP
email: ggrothendieck at gmail.com



More information about the R-help mailing list