Calculate the mean moving window value for a given radius, shape and function for each cell in a larger resolution grid.
Usage
winmove_agg(
coarse_dat,
fine_dat,
d,
type = c("circle", "rectangle"),
win_fun,
agg_fun = mean,
is_grid = TRUE,
quiet = FALSE,
...
)Arguments
- coarse_dat
sf, Raster* or Spatial* object. The coarse grain data (response data) across which to calculate the aggregated moving window function
- fine_dat
Raster* object. The fine grain data (predictor / covariate data) to aggregate
- d
numeric. If
type=circle, the radius of the circle (in units of the CRS). Iftype=rectanglethe dimension of the rectangle (one or two numbers).- type
character. The shape of the moving window
- win_fun
character. The function to apply to the moving window. The function
win_funshould take multiple numbers, and return a single number. For examplemean,modal,minormax. It should also accept ana.rmargument (or ignore it, e.g. as one of the 'dots' arguments. For example,lengthwill fail, butfunction(x, ...){na.omit(length(x))}works. See Details- agg_fun
character. The function by which to aggregate. By default this is set to
mean- is_grid
logical. Use
TRUE(default) ifgcontains only rectangular cells (i.e. a grid). Ifgis any other polygon file, this should be set to false- quiet
logical. If
FALSE(default) andis_grid == TRUEthe user gets a warning that the aggregation assumes all cells are rectangular- ...
further arguments passed to or from other methods
Details
grainchanger has several built-in functions. Functions
currently included are:
shdi- Shannon diversity, requires the additional argumentlc_class(vector or scalar)shei- Shannon evenness, requires the additional argumentlc_class(vector or scalar)prop- Proportion, requires the additional argumentlc_class(scalar)var_range- Range (max - min)
Note that winmove_agg can be run in parallel using plan(multiprocess) from the future package.
