| mask {terra} | R Documentation |
Mask values in a SpatRaster or SpatVector
Description
If 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 signature 'SpatRaster,SpatRaster'
mask(x, mask, inverse=FALSE, maskvalues=NA,
updatevalue=NA, filename="", ...)
## S4 method for signature 'SpatRaster,SpatVector'
mask(x, mask, inverse=FALSE, updatevalue=NA,
touches=TRUE, filename="", ...)
## S4 method for signature 'SpatRaster,SpatExtent'
mask(x, mask, inverse=FALSE, updatevalue=NA,
touches=TRUE, filename="", ...)
## S4 method for signature 'SpatVector,SpatVector'
mask(x, mask, inverse=FALSE)
## S4 method for signature 'SpatVector,SpatExtent'
mask(x, mask, inverse=FALSE)
Arguments
x |
SpatRaster or SpatVector |
mask |
SpatRaster or SpatVector |
inverse |
logical. If |
maskvalues |
numeric. The value(s) in |
updatevalue |
numeric. The value that masked cells should become (if they are not |
touches |
logical. If |
filename |
character. Output filename |
... |
additional arguments for writing files as in |
Value
SpatRaster
See Also
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)