# which: Which cells are TRUE? In raster: Geographic Data Analysis and Modeling

## 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

 ```1 2``` ```## S4 method for signature 'RasterLayer' Which(x, cells=FALSE, na.rm=TRUE, ...) ```

## 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)

## Value

RasterLayer

`which.max`, `which.min`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19``` ```r <- raster(ncol=10, nrow=10) set.seed(0) 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 ```