[R] how to calculate the statistics of a yearly window with a rolling step as 1 day?

Gabor Grothendieck ggrothendieck at gmail.com
Mon Oct 10 21:17:44 CEST 2011


On Mon, Oct 10, 2011 at 2:55 PM, ecoc <liting231 at gmail.com> wrote:
> Hope someone can help me here.
>
> I have a daily time series, say
>
> 2003-02-01 2003-02-03 2003-02-07 2003-02-09 2003-02-14 .......... 2004-02-01
> 2004-02-04
>  0.4914798 -1.1857653 -1.6982844 -0.3559572 -0.2333087  ...........
> 0.44553    -0.45222
>
> I need to calculate the statistics for the overlapping rolling yearly window
> with rolling step as 1 day
>
> so for each of the intervals: (2003-02-01 ~ 2004-02-01), (2003-02-03 ~
> 2004-02-04), ....
> i need to calculate some statistics.
>
> Could you please help me out how to extract these intervals? Right now I am
> using index. But since the dates doesn't match exactly, I have to do it
> like:
>
> a(index(a)>=index(b) & index(a)<=index(b)+365), which is very time-consuming
> since it's a long time series.
>
> Could someone help me? Really appreicate!!!
>

Fill in the missing days with NAs using zoo FAQ 15 or otherwise and
then use rollapply(z, 365, f, ...whatever...)  such that your function
f first removes any NAs.


-- 
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