Compute "rolling" or "moving" values, such as the "rolling average" for each cell in a SpatRaster.
See focal for spatially moving averages and similar computations. And see cumsum and other cum* functions to compute cumulate values.
## S4 method for signature 'SpatRaster'roll(x, n, fun=mean, type="around", circular=FALSE, na.rm=FALSE, filename="",..., wopt=list())## S4 method for signature 'numeric'roll(x, n, fun=mean, type="around", circular=FALSE, na.rm=FALSE,...)
Arguments
x: SpatRaster or numeric
n: integer > 1. The size of the "window", that is, the number of sequential cells to use in fun
fun: a function like mean, min, max, sum
type: character. One of "around", "to", or "from". The choice indicates which values should be used in the computation. The focal cell is always used. If type is "around", (n-1)/2 before and after the focal cell are also included. If type = "from", n-1 cells are after the focal cell are included. If type = "to", n-1 cells before the focal cell are included. For example, when using n=3 for element 5 of a vector; "around" used elements 4,5,6; "to" used elements 3,4,5, and "from" uses elements 5,6,7
circular: logical. If TRUE, the data are considered to have a circular nature (e.g. days or months of the year), such that there are no missing values before first or after the last value.
na.rm: logical. If TRUE, NA values should be ignored (by fun)
filename: character. Output filename
...: additional arguments for fun
wopt: list with named options for writing files as in writeRaster