17

In R I frequently aggregate daily data (in a zoo) by month, using something like this:

result <- aggregate(x, as.yearmon, "mean", na.rm=TRUE)

Is there a way that I can do this by week?

Richard Herron
  • 9,760
  • 12
  • 69
  • 116

1 Answers1

24

The easiest thing to do is to use the apply.weekly function from xts.

> apply.weekly(zoo(1:10, as.Date("2010-01-01") + 1:10), mean)
2010-01-03 2010-01-10 2010-01-11 
         3         42         10
Shane
  • 98,550
  • 35
  • 224
  • 217