Learn R Programming

raster (version 3.6-23)

which: Which cells are TRUE?

Description

Which returns a RasterLayer with TRUE or FALSE setting cells that are NA to FALSE (unless na.rm=FALSE). If the RasterLayer has numbers, all values that are 0 become FALSE and all other values become TRUE. The function can also return the cell numbers that are TRUE

Usage

# S4 method for RasterLayer
Which(x, cells=FALSE, na.rm=TRUE, ...)

Value

RasterLayer

Arguments

x

RasterLayer

cells

logical. If TRUE, cell numbers are returned, otherwise a RasterLayer is returned

na.rm

logical. If TRUE, NA values are treated as FALSE, otherwise they remain NA (only when cells=FALSE)

...

Additional arguments (none implemented)

See Also

Examples

Run this code
r <- raster(ncol=10, nrow=10)
set.seed(0)
values(r) <- runif(ncell(r))
r[r < 0.2 ] <- 0
r[r > 0.8] <- 1
r[r > 0 & r < 1 ] <- 0.5

Which(r, cells=TRUE)
Which(r > 0.5, cells=TRUE)

s1 <- r > 0.5
s2 <- Which(r > 0.5)
s1[1:15]
s2[1:15]

# this expression
x1 <- Which(r, na.rm=FALSE)
# is the inverse of
x2 <- r==0

Run the code above in your browser using DataLab