The following logical (boolean) operators are available for computations with RasterLayer objects:

&, |, and !

The following functions are available with a Raster* argument:

is.na, is.nan, is.finite, is.infinite

Value

A Raster object with logical (TRUE/FALSE values)

Note

These are convenient operators/functions that are most usful for relatively small RasterLayers for which all the values can be held in memory. If the values of the output RasterLayer cannot be held in memory, they will be saved to a temporary file. In that case it could be more efficient to use calc instead.

Examples

r <- raster(ncols=10, nrows=10)
values(r) <- runif(ncell(r)) * 10
r1 <- r < 3 | r > 6
r2 <- !r1
r3 <- r >= 3 & r <= 6
r4 <- r2 == r3
r[r>3] <- NA
r5 <- is.na(r)
r[1:5]
#> [1]       NA       NA 1.505189       NA       NA
r1[1:5]
#> [1] 1 1 1 1 0
r2[1:5]
#> [1] 0 0 0 0 1
r3[1:5]
#> [1] 0 0 0 0 1