Thanks everyone. For 5 point moving average, filter(x, side=2, filter=rep(1/5, 5)), versus, filter(x, side=2, filter=rep(1, 5)
Do they have the same effect, since the total needs to be 1. Gabor & Rui: I am aware of the zoo package, I did not want to install a package for one function. Same reason for sos package. David, thanks, that is what I am looking for. Mike On Mon, Feb 17, 2014 at 2:07 PM, Rui Barradas <ruipbarra...@sapo.pt> wrote: > Hello, > > Many packages have a movind average function. For instance package > forecast. Or > > library(sos) > findFn("moving average") > > In your example, what you compute is not exactly a moving average, but in > can be computed with something like the following. > > s <- (seq_along(dat) - 1) %/% 3 > sapply(split(dat, s), mean) > > > Hope this helps, > > Rui Barradas > > > Em 17-02-2014 18:45, C W escreveu: > >> Hi list, >> How do I calculate a moving average without using filter(). filter() does >> not seem to give weighted averages. >> >> I am looking into apply(), tapply,... But nothing "moves". >> >> For example, >> >> dat<-c(1:20) >> mean(dat[1:3]) >> mean(dat[4:6]) >> mean(dat[7:9]) >> mean(dat[10:12]) >> >> etc... >> >> I understand the point of apply is to avoid loops, how should I >> incorporate >> this idea into using an apply()? >> >> Thanks, >> Mike >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> 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]] ______________________________________________ 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.