
Create a new Raster* object that has the same values as x
, except for the cells that are NA
(or other maskvalue
) in a 'mask'. These cells become NA
(or other updatevalue
). The mask can be either another Raster* object of the same extent and resolution, or a Spatial* object (e.g. SpatialPolygons) in which case all cells that are not covered by the Spatial object are set to updatevalue
. You can use inverse=TRUE
to set the cells that are not NA
(or other maskvalue
) in the mask, or not covered by the Spatial* object, to NA
(or other updatvalue
).
# S4 method for RasterLayer,RasterLayer
mask(x, mask, filename="", inverse=FALSE,
maskvalue=NA, updatevalue=NA, updateNA=FALSE, ...)# S4 method for RasterStackBrick,RasterLayer
mask(x, mask, filename="", inverse=FALSE,
maskvalue=NA, updatevalue=NA, updateNA=FALSE, ...)
# S4 method for RasterLayer,RasterStackBrick
mask(x, mask, filename="", inverse=FALSE,
maskvalue=NA, updatevalue=NA, updateNA=FALSE, ...)
# S4 method for RasterStackBrick,RasterStackBrick
mask(x, mask, filename="", inverse=FALSE,
maskvalue=NA, updatevalue=NA, updateNA=FALSE, ...)
# S4 method for Raster,Spatial
mask(x, mask, filename="", inverse=FALSE,
updatevalue=NA, updateNA=FALSE, ...)
Raster* object
Raster* object or a Spatial* object
character. Optional output filename
logical. If TRUE
, areas on mask that are _not_ the maskvalue
are masked
numeric. The value in mask
that indicates the cells of x
that should become updatevalue
(default = NA
)
numeric. The value that cells of x
should become if they are not covered by mask
(and not NA
)
logical. If TRUE
, NA
values outside the masked area are also updated to the the updatevalue
(only relevant if the updatevalue
is not NA
additional arguments as in writeRaster
Raster* object
# NOT RUN {
r <- raster(ncol=10, nrow=10)
m <- raster(ncol=10, nrow=10)
r[] <- runif(ncell(r)) * 10
m[] <- runif(ncell(r))
m[m < 0.5] <- NA
mr <- mask(r, m)
m2 <- m > .7
mr2 <- mask(r, m2, maskvalue=TRUE)
# }
Run the code above in your browser using DataLab