R: Moving Average

MoveAvg {DescTools} | R Documentation

## Moving Average

### Description

Compute a simple moving average (running mean).

### Usage

    MoveAvg(x, order, align = c("center", "left", "right"),
            endrule = c("NA", "keep", "constant"))

### Arguments

`x` | univariate time series.
`order` | order of moving average.
`align` | specifies whether result should be centered (default), left-aligned or right-aligned.
`endrule` | character string indicating how the values at the beginning and the end (of the data) should be treated. `"keep"` keeps the first and last k2 values at both ends, where k2 is the half-bandwidth `k2 = k %/% 2`, i.e., `y[j] = x[j]` for j = 1,..,k2 and (n-k2+1),..,n; `"constant"` fill the ends with first and last calculated value in output array (out[1:k2] = out[k2+1]) `"NA"` the default, leaves the values to NA, as they are returned by `filter`.

### Details

The implementation is using the function `filter` to calculate the moving average.

### Value

Returns a vector of the same size and same class as x.

### Author(s)

Andri Signorell <andri@signorell.net>

### See Also

There's a faster implementation of running mean in the package caTools `runmean()` and a slower one in forecast `ma()`. There's similar code in `Midx()`.

### Examples

    MoveAvg(AirPassengers, order=5)

[Package DescTools version 0.99.36 Index]