corLocal | R Documentation |
Local correlation coefficient for two RasterLayer objects (using a focal neighborhood) or for two RasterStack or Brick objects (with the same number of layers (> 2))
## S4 method for signature 'RasterLayer,RasterLayer'
corLocal(x, y, ngb=5,
method=c("pearson", "kendall", "spearman"), test=FALSE, filename='', ...)
## S4 method for signature 'RasterStackBrick,RasterStackBrick'
corLocal(x, y,
method=c("pearson", "kendall", "spearman"), test=FALSE, filename='', ...)
x |
RasterLayer or RasterStack/RasterBrick |
y |
object of the same class as |
ngb |
neighborhood size. Either a single integer or a vector of two integers c(nrow, ncol) |
method |
character indicating which correlation coefficient is to be used. One of |
test |
logical. If |
filename |
character. Output filename (optional) |
... |
additional arguments as for |
RasterLayer
NA
values are omitted
cor
, cor.test
b <- stack(system.file("external/rlogo.grd", package="raster"))
b <- aggregate(b, 2, mean)
set.seed(0)
b[[2]] <- flip(b[[2]], 'y') + runif(ncell(b))
b[[1]] <- b[[1]] + runif(ncell(b))
x <- corLocal(b[[1]], b[[2]], test=TRUE )
# plot(x)
# only cells where the p-value < 0.1
xm <- mask(x[[1]], x[[2]] < 0.1, maskvalue=FALSE)
plot(xm)
# for global correlation, use the cor function
x <- as.matrix(b)
cor(x, method="spearman")
# use sampleRegular for large datasets
x <- sampleRegular(b, 1000)
cor.test(x[,1], x[,2])
# RasterStack or Brick objects
y <- corLocal(b, flip(b, 'y'))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.