[R] using zoo() to coerce time series to a different reference frame

Achim Zeileis Achim.Zeileis at uibk.ac.at
Wed Jun 30 05:18:13 CEST 2010


On Tue, 29 Jun 2010, Jonathan Greenberg wrote:

> Folks:
>
> I have two sets of dates, and one set of data:
>
> ***
>
> require("chron")
> require("zoo")
> reference_dates=seq.dates("01/01/92", "12/31/92", by = "months")
> data_dates=seq.dates("01/15/91", "12/15/93", by = "months")
> data=1:length(data_dates)
>
> reference_zoo=zoo(order.by=reference_dates)
> data_zoo=zoo(data,data_dates)
>
> ***
>
> What I would like is to have a zoo object that uses the index from
> reference_dates, but grabs the data for each of the dates (using a
> spline interpolation) from data_zoo object.  I feel like my solution
> is a bit slow, can someone let me know if there is a quicker way to do
> this?  Thanks:

With current versions of "zoo" you can simply do:

   na.spline(data_zoo, xout = reference_dates)

hth,
Z

> ***
>
> reference_data_zoo_merge=merge(reference_zoo,data_zoo)
> reference_data_zoo_data=na.spline(reference_data_zoo_merge)
> reference_data_zoo_data=merge(reference_zoo,reference_data_zoo_data,all=FALSE)
>
> ***
>
> --j
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>



More information about the R-help mailing list