On Wed, 2 Mar 2005 17:22:43 -0500, "Whit Armstrong" <[EMAIL PROTECTED]> wrote :
>Does anyone know an easy way to calculate the rolling 20 period average >or sum of a vector? > >For instance: >x <- rnorm(1000) > >y <- apply.subset(x,20,fun="sum") > >The first element of y would contain the sum of elements 1 to 20, the >second element of y >would contain the sum of elements 2:21, and so on. > >I thought I had seen this on the list a year or so ago, but I couldn't >find anything in the archives. I don't know of a general purpose function, but filter() (in the stats package) can do the example you give, or any other linear filter. e.g. x <- rnorm(1000) y <- filter(x, rep(1,20)) puts 20 element sums into y. The vector ends up the same length as x, with NAs at the beginning and end (by default). Duncan Murdoch ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
