R: Correlation and (weighted) covariance

layerStats {raster} | R Documentation

## Correlation and (weighted) covariance

### Description

Compute correlation and (weighted) covariance for multi-layer Raster objects. Like `cellStats` this function returns a few values, not a Raster* object (see `Summary-methods` for that).

### Usage

    layerStats(x, stat, w, asSample=TRUE, na.rm=FALSE, ...)

### Arguments

`x` | RasterStack or RasterBrick for which to compute a statistic
`stat` | Character. The statistic to compute: either 'cov' (covariance), 'weighted.cov' (weighted covariance), or 'pearson' (correlation coefficient)
`w` | RasterLayer with the weights (should have the same extent, resolution and number of layers as `x`) to compute the weighted covariance
`asSample` | Logical. If `TRUE`, the statistic for a sample (denominator is `n-1`) is computed, rather than for the population (denominator is `n`)
`na.rm` | Logical. Should missing values be removed?
`...` | Additional arguments (none implemetned)

### Value

List with two items: the correlation or (weighted) covariance matrix, and the (weighted) means.

### Author(s)

Jonathan A. Greenberg & Robert Hijmans. Weighted covariance based on code by Mort Canty

### References

For the weighted covariance:

- Canty, M.J. and A.A. Nielsen, 2008. Automatic radiometric normalization of multitemporal satellite imagery with the iteratively re-weighted MAD transformation. Remote Sensing of Environment 112:1025-1036.

- Nielsen, A.A., 2007. The regularized iteratively reweighted MAD method for change detection in multi- and hyperspectral data. IEEE Transactions on Image Processing 16(2):463-478.

### See Also

`cellStats`, `cov.wt`, `weighted.mean`

### Examples

    b <- brick(system.file("external/rlogo.grd", package="raster"))
    layerStats(b, 'pearson')

    layerStats(b, 'cov')

    # weigh by column number
    w <- init(b, v='col')
    layerStats(b, 'weighted.cov', w=w)

[Package raster version 2.5-8 Index]