
Mask values in a SpatRaster or SpatVector
mask.RdIf x is a SpatRaster:
Create a new SpatRaster that has the same values as SpatRaster x, except for the cells that are NA (or other maskvalue) in another SpatRaster (the 'mask'), or the cells that are not covered by a SpatVector or SpatExtent. These cells become NA (or another updatevalue).
If x is a SpatVector or SpatExtent:
Select geometries of x that intersect, or not intersect, with the geometries of y.
Usage
# S4 method for class 'SpatRaster,SpatRaster'
mask(x, mask, inverse=FALSE, maskvalues=NA,
updatevalue=NA, filename="", ...)
# S4 method for class 'SpatRaster,SpatVector'
mask(x, mask, inverse=FALSE, updatevalue=NA,
touches=TRUE, filename="", ...)
# S4 method for class 'SpatRaster,SpatExtent'
mask(x, mask, inverse=FALSE, updatevalue=NA,
touches=TRUE, filename="", ...)
# S4 method for class 'SpatVector,SpatVector'
mask(x, mask, inverse=FALSE)
# S4 method for class 'SpatVector,SpatExtent'
mask(x, mask, inverse=FALSE)Arguments
- x
SpatRaster or SpatVector
- mask
SpatRaster or SpatVector
- inverse
logical. If
TRUE, areas on mask that are _not_ themaskvalueare masked- maskvalues
numeric. The value(s) in
maskthat indicate which cells ofxshould be masked (change their value toupdatevalue(default =NA))- updatevalue
numeric. The value that masked cells should become (if they are not
NA)- touches
logical. If
TRUE, all cells touched by lines or polygons will be masked, not just those on the line render path, or whose center point is within the polygon- filename
character. Output filename
- ...
additional arguments for writing files as in
writeRaster
Examples
f <- system.file("ex/elev.tif", package="terra")
r <- rast(f)
msk <- ifel(r < 400, NA, 1)
m <- mask(r, msk)
f <- system.file("ex/lux.shp", package="terra")
v <- vect(f)[1,]
mv1 <- mask(r, v)
mv2 <- crop(r, v, mask=TRUE)