Rolling Means/Maximums/Medians/Sums
Generic functions for computing rolling means, maximums, medians, and sums of ordered observations.
rollmean(x, k, fill = if (na.pad) NA, na.pad = FALSE, align = c("center", "left", "right"), ...) rollmax(x, k, fill = if (na.pad) NA, na.pad = FALSE, align = c("center", "left", "right"), ...) rollmedian(x, k, fill = if (na.pad) NA, na.pad = FALSE, align = c("center", "left", "right"), ...) rollsum(x, k, fill = if (na.pad) NA, na.pad = FALSE, align = c("center", "left", "right"), ...) rollmeanr(..., align = "right") rollmaxr(..., align = "right") rollmedianr(..., align = "right") rollsumr(..., align = "right")
x |
an object (representing a series of observations). |
k |
integer width of the rolling window. Must be odd for |
fill |
a three-component vector or list (recycled otherwise) providing
filling values at the left/within/to the right of the data range.
See the |
na.pad |
deprecated. Use |
align |
character specifying whether the index of the result should be left- or right-aligned or centered (default) compared to the rolling window of observations. |
... |
Further arguments passed to methods. |
These functions compute rolling means, maximums, medians, and sums respectively
and are thus similar to rollapply
but are
optimized for speed.
If x
is of length 0, x
is returned unmodified.
An object of the same class as x
with the rolling mean/max/median/sum.
suppressWarnings(RNGversion("3.5.0")) set.seed(1) x.Date <- as.Date(paste(2004, rep(1:4, 4:1), sample(1:28, 10), sep = "-")) x <- zoo(rnorm(12), x.Date) ## rolling operations for univariate series rollmean(x, 3) rollmax(x, 3) rollmedian(x, 3) rollsum(x, 3) ## rolling operations for multivariate series xm <- zoo(matrix(1:12, 4, 3), x.Date[1:4]) rollmean(xm, 3) rollmax(xm, 3) rollmedian(xm, 3) rollsum(xm, 3) ## rollapply vs. dedicated rollmean rollapply(xm, 3, mean) # uses rollmean rollapply(xm, 3, function(x) mean(x)) # does not use rollmean
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.