This gets you close ...

Jean

library(zoo)
t(apply(mymatrix, 1, rollapply, w, sum))


On Thu, Jun 27, 2013 at 2:00 PM, Anika Masters <anika.masters@gmail.com>wrote:

> #using "rollapply" to calculate a moving sum or running sum?
>
> #I am tryign to use rollapply to calcualte a moving sum? #I tried
> rollapply and get the error message
> #"Error in seq.default(start.at, NROW(data), by = by) :
> #  wrong sign in 'by' argument"
>
> #example:
>
> mymatrix <- ( matrix(data=1:100, nrow=5, ncol=20) )
> mymatrix_cumsum  <- ( matrix(data=NA, nrow=5, ncol=20) )
> w=12
> for(i in 1: (ncol(mymatrix)-w+1) ) {
> mymatrix_cumsum[ , i]  <- apply(X=mymatrix[, i:(i+w-1)] , MARGIN=1,
> FUN=sum, na.rm=T)
> }
>
> #How might I use the "rollapply" function instead?
>
> rollapply(mymatrix, 12, sum)
>
> rollapply(data = mymatrix, width = 12, FUN=sum, by.column =T, fill =
> NA, partial = FALSE, align = "left" )
>
> ______________________________________________
> R-help@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.
>

	[[alternative HTML version deleted]]

