[R] Zoo changing time-zone when I merge 2 zoo time series

Enrico Schumann e@ @end|ng |rom enr|co@chum@nn@net
Thu Jul 19 08:55:52 CEST 2018


On Mon, 09 Jul 2018, Christofer Bogaso writes:

> Hi,
>
> Below is my code :
>
> library(zoo)
> Dat1 = structure(c(17890, 17770.01, 17600, 17593, 17630.01), index =
> structure(c(1512664740,
> 1512664800, 1512664860, 1512664920, 1512664980), class = c("POSIXct",
> "POSIXt"), tzone = "America/Los_Angeles"), class = "zoo")
> Dat2 = structure(c(15804.28, 15720.61, 15770, 15750, 15770), index =
> structure(c(1512664740,
> 1512664800, 1512664860, 1512664920, 1512664980), class = c("POSIXct",
> "POSIXt"), tzone = "America/Los_Angeles"), class = "zoo")
>
> merge(Dat1, Dat2)
>
>                         Dat1     Dat2
> 2017-12-07 22:09:00 17890.00 15804.28
> 2017-12-07 22:10:00 17770.01 15720.61
> 2017-12-07 22:11:00 17600.00 15770.00
> 2017-12-07 22:12:00 17593.00 15750.00
> 2017-12-07 22:13:00 17630.01 15770.00
>
>
> So, after merging the TZ of the original series got changed.
>
> Appreciate if someone points what went wrong
>

Nothing went wrong. Only 'merge.zoo' drops the
time-zone attribute.  But note that it did not change
the actual times:

  unclass(index(Dat1))
  ## [1] 1512664740 1512664800 1512664860 1512664920 1512664980
  ## attr(,"tzone")
  ## [1] "America/Los_Angeles"

  unclass(index(merge(Dat1, Dat2)))
  ## [1] 1512664740 1512664800 1512664860 1512664920 1512664980

  all(unclass(index(Dat1)) == unclass(index(merge(Dat1, Dat2))))
  ## [1] TRUE

  M <- merge(Dat1, Dat2)
  attr(index(M), "tzone") <- attr(index(Dat1), "tzone")
  M
  ##                         Dat1     Dat2
  ## 2017-12-07 08:39:00 17890.00 15804.28
  ## 2017-12-07 08:40:00 17770.01 15720.61
  ## 2017-12-07 08:41:00 17600.00 15770.00
  ## 2017-12-07 08:42:00 17593.00 15750.00
  ## 2017-12-07 08:43:00 17630.01 15770.00


See Ripley, B. D. and Hornik, K. (2001) Date-time
classes. R News, 1/2,
8–11. https://www.r-project.org/doc/Rnews/Rnews_2001-2.pdf



-- 
Enrico Schumann
Lucerne, Switzerland
http://enricoschumann.net




More information about the R-help mailing list