# mewMean: Update the moving expanding window average In mewAvg: A Fixed Memeory Moving Expanding Window Average

## Description

When desired, the `x_mean` slot in an S4 object of class `mewTyp` may be updated to contain the correct moving expanding window (MEW) average (it is not updated by the function `mewAccum` to save computation). If the slot `know_mean` is unity, the slot `x_mean` is up-to-date; otherwise; it is not.

## Usage

 `1` ```mewMean(av) ```

## Arguments

 `av` (class mewTyp) the current state of the MEW average

## Value

the updated instance of the argument `av`

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62``` ```n_iter <- 100 i_to_print <- 10 results <- matrix(data = double(2*n_iter/i_to_print), nrow = n_iter/i_to_print, ncol = 2) av <- mewInit(n_bin = 4, n_xx = 2, ff = 0.5) for (i in 1:n_iter) { value <- runif(n=2) value[1] <- ((cos(value[1]*2*pi))^2)*(1 - exp(-0.01*i)) value[2] <- (-((sin(value[2]*2*pi))^2))*(1 - exp(-0.01*i)) av <- mewAccum(xx = value, av = av) if (i%%i_to_print == 0) { av <- mewMean(av) show(av) results[i/i_to_print, ] <- mewGetMean(av) } } ## plot the results plot(c(1, (n_iter/i_to_print)), c(min(results), max(results)), type = "n") points(1:(n_iter/i_to_print), results[, 1]) points(1:(n_iter/i_to_print), results[, 2]) ## Now, a larger example, and we pause part way through to assess ## convergence n_iter <- 1000 av <- mewInit(n_bin = 4, n_xx = 5000, ff = 0.5) for (i in 1:n_iter) { new_samp <- runif(n = 5000) av <- mewAccum(xx = new_samp, av = av) } av <- mewMean(av = av) ## of course each element of the mean sould converge to 0.5. After ## 1000 iterations, the first six elements of the mean vector are show(av) ## run another 1000 iterations for (i in 1:1000) { new_samp <- runif(n = 5000) av <- mewAccum(xx = new_samp, av = av) } av <- mewMean(av) ## check the mean of the first six elements again show(av) ```

mewAvg documentation built on May 2, 2019, 6:20 a.m.