R: Mask values in a SpatRaster

mask {terra} | R Documentation

## Mask values in a SpatRaster

### Description

Create a new SpatRaster that has the same values as SpatRaster `x`, except for the cells that are `NA` (or another `maskvalue`) in another SpatRaster (the 'mask'), or not covered by a SpatVector. These cells become `NA` (or another `updatevalue`).

### 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="", ...)

### Arguments

`x` | SpatRaster
`mask` | SpatRaster
`inverse` | logical. If `TRUE`, areas on mask that are _not_ the `maskvalue` are masked
`maskvalues` | numeric. The value(s) in `mask` that indicates the cells of `x` that should become `updatevalue` (default = `NA`)
`updatevalue` | numeric. The value that cells of `x` should become if they are not covered by `mask` (and 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`

### Value

SpatRaster

### See Also

crop

### Examples

    r <- rast(ncols=10, nrows=10)
    m <- rast(ncols=10, nrows=10)
    values(r) <- 1:100
    set.seed(1965)
    x <- round(3 * runif(ncell(r)))
    x[x==0] <- NA
    values(m) <- x
    mr <- mask(r, m)

[Package terra version 1.4-7 Index]