Dear List, I have a data frame with approximately 500000 rows that looks like this:
Date time value … 19.07.1956 12:00:00 4.84 19.07.1956 13:00:00 4.85 19.07.1956 14:00:00 4.89 19.07.1956 15:00:00 4.94 19.07.1956 16:00:00 4.99 19.07.1956 17:00:00 5.01 19.07.1956 18:00:00 5.04 19.07.1956 19:00:00 5.04 19.07.1956 20:00:00 5.04 19.07.1956 21:00:00 5.02 19.07.1956 22:00:00 5.01 19.07.1956 23:00:00 5.00 20.07.1956 00:00:00 4.99 20.07.1956 01:00:00 4.99 20.07.1956 02:00:00 5.00 20.07.1956 03:00:00 5.03 20.07.1956 04:00:00 5.07 20.07.1956 05:00:00 5.10 20.07.1956 06:00:00 5.14 20.07.1956 07:00:00 5.14 20.07.1956 08:00:00 5.11 20.07.1956 09:00:00 5.08 20.07.1956 10:00:00 5.03 20.07.1956 11:00:00 4.98 20.07.1956 12:00:00 4.94 20.07.1956 13:00:00 4.93 … I want to calculate the moving average of the right column. I tried: dat$index<-1:length(dat$Zeit) qs<- 43800 erg<-c() for (y in min(dat$index):max(dat$index)){ m<- mean(dat[(dat$index>=y)&(dat$index<=y+qs+1),3]) erg<-c(erg,m) } It does works, but it takes ages. Is there a faster way to compute the moving average? Thank you, Tonja Krueger ___________________________________________________________ Handy Internet-Flat ¿ gratis ¿ mit WEB.DE FreePhone ______________________________________________ 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.