localFun.Rd
Local functions for two RasterLayer objects (using a focal neighborhood)
# S4 method for class 'RasterLayer,RasterLayer'
localFun(x, y, ngb=5, fun, filename='', ...)
RasterLayer or RasterStack/RasterBrick
object of the same class as x
, and with the same number of layers
integer. rectangular neighbourhood size. Either a single integer or a vector of two integers c(rows, cols), such as c(3,3) to have a 3 x 3 focal window
function
character. Output filename (optional)
additional arguments as for writeRaster
The first two arguments that fun
needs to accept are vectors representing the local cells of RasterLayer x
and y
(each of length ngb * ngb
). It also must have an ellipsis (...
) argument
RasterLayer
corLocal
, localFun
set.seed(0)
b <- stack(system.file("external/rlogo.grd", package="raster"))
x <- flip(b[[2]], 'y') + runif(ncell(b))
y <- b[[1]] + runif(ncell(b))
f <- localFun(x, y, fun=cor)
if (FALSE) { # \dontrun{
# local regression:
rfun <- function(x, y, ...) {
m <- lm(y~x)
# return R^2
summary(m)$r.squared
}
ff <- localFun(x, y, fun=rfun)
plot(f, ff)
} # }