[R] Function similar to cumsum/cumprod
    Dimitris Rizopoulos 
    d.rizopoulos at erasmusmc.nl
       
    Tue Sep 22 16:42:23 CEST 2009
    
    
  
For the case of the mean, you can use the following:
cummean <- function (x) cumsum(x) / seq_len(length(x))
for more a general function, one option is
cumFUN <- function (x, FUN = mean) {
    sapply(seq_len(length(x)), function (i) FUN(x[1:i]))
}
# Examples:
x <- rnorm(100)
cummean(x)
cumFUN(x)
cumFUN(x, sd)
I hope it helps.
Best,
Dimitris
Sergey Goriatchev wrote:
> Hello, everyone
> 
> I wonder if there is in R somewhere a function similar to cumsum().
> The function calculates a statistic (say mean or standard deviation)
> buy adding consequtively one more data point.
> 
> So, say I have a timeseries of 100 observations.
> I start by calculating mean of first 30 observations
> Then I add one observation and calculate mean of 31 observations
> Then I add one more observation and calculate mean of 32 observation,
> and so on until the end
> 
> Is there a function like that in R?
> 
> Best,
> Sergey
> 
-- 
Dimitris Rizopoulos
Assistant Professor
Department of Biostatistics
Erasmus University Medical Center
Address: PO Box 2040, 3000 CA Rotterdam, the Netherlands
Tel: +31/(0)10/7043478
Fax: +31/(0)10/7043014
    
    
More information about the R-help
mailing list