Calculate the value for a given function for each cell in a larger resolution grid.
nomove_agg(coarse_dat, fine_dat, agg_fun, is_grid = TRUE, quiet = FALSE, ...)
| coarse_dat | sf, Raster* or Spatial* object. The coarse grain data (response data) across which to calculate the aggregated function |
|---|---|
| fine_dat | Raster* object. Raster* object. The fine grain data (predictor / covariate data) to aggregate |
| agg_fun | function The function to apply. The function fun should take multiple numbers, and return a single number. For example mean, modal, min or max. It should also accept a na.rm argument (or ignore it, e.g. as one of the 'dots' arguments. For example, length will fail, but function(x, ...)na.omit(length(x)) works. See Details |
| is_grid | logical. Use |
| quiet | logical. If |
| ... | further arguments passed to or from other methods |
Raster (if input is Raster) or numeric vector (if input is sp or sf object) containing values calculated for each coarser cell
grainchanger has several built-in functions. Functions
currently included are:
shdi - Shannon diversity, requires the additional argument lc_class (vector or scalar)
shei - Shannon evenness, requires the additional argument lc_class (vector or scalar)
prop - Proportion, requires the additional argument lc_class (scalar)
var_range - Range (max - min)
Note that nomove_agg can be run in parallel using plan(multiprocess) from the future package.
# load required data data(g_sf) data(cont_ls) data(cat_ls) # aggregate using mean d <- nomove_agg(g_sf, cont_ls, mean)#>#># aggregate using Shannon evenness d <- nomove_agg(g_sf, cont_ls, shei, lc_class = 1:4)#>#>