coarse_grain: Matrix coarse-graining

View source: R/coarse_graining.R

coarse_grainR Documentation

Matrix coarse-graining

Description

This function averages the spatial data locally. It divides the input matrix into submatrices of dimension subsize and averages the spatial data in these submatrices. By doing this, the dimension of resultant matrix is reduced by a factor of subsize.

Usage

coarse_grain(mat, subsize)

Arguments

mat

A matrix

subsize

Dimension of the submatrix. This has to be a positive integer smaller than the dimension of input matrix.

Details

If the data is classified into discrete units, the calculation of variance and skewness can give spurious results irrelevant to the proximity to transition. Therefore, discrete data should be 'coarse-grained' before calculating the spatial early warning signals. However, this can also be applied to continuous state data.

Value

A matrix of reduced dimension.

References

Sankaran, S., Majumder, S., Kefi, S. and Guttal, V. (2017). Implications of being discrete and spatial for detecting early warning signals of regime shifts. Ecological Indicators.

See Also

generic_sews

Examples

rmat <- matrix(runif(20*10) > .5, 
               ncol = 20, nrow = 10)
rmat.cg <- coarse_grain(rmat, subsize = 2)

par(mfrow = c(1, 2))
image(rmat)
title('Raw matrix') 
image(rmat.cg) 
title('Coarse-grained matrix')


spatialwarnings documentation built on March 21, 2022, 5:08 p.m.