Take a stratified random sample from the cell values of a Raster* object (without replacement). An attempt is made to sample `size`

cells from each stratum. The values in the RasterLayer `x`

are rounded to integers; with each value representing a stratum.

```
# S4 method for RasterLayer
sampleStratified(x, size, exp=10, na.rm=TRUE, xy=FALSE, ext=NULL, sp=FALSE, ...)
```

## Arguments

- x
Raster* object, with values (rounded to integers) representing strata

- size
positive integer giving the number of items to choose

- exp
numeric >= 1. 'Expansion factor' that is multiplied with size to get an intial sample. Can be increased when you get an insufficient number of samples for small strata

- na.rm
logical. If `TRUE`

(the default), `NA`

values are removed from random sample

- xy
logical. Return coordinates of cells rather than cell numbers

- ext
Extent object. To limit regular sampling to the area within the extent

- sp
logical. If `TRUE`

, a SpatialPointsDataFrame is returned

- ...
Additional arguments. None implemented

## Details

The function may not work well when the size (number of cells) of some strata is relatively small.

## Value

matrix of cell numbers (and optionally coordinates) by stratum

## Examples

```
r <- raster(ncol=10, nrow=10)
names(r) <- 'stratum'
values(r) <- round((runif(ncell(r))+0.5)*3)
sampleStratified(r, size=3)
#> cell stratum
#> [1,] 92 2
#> [2,] 57 2
#> [3,] 4 2
#> [4,] 54 3
#> [5,] 27 3
#> [6,] 20 3
#> [7,] 95 4
#> [8,] 94 4
#> [9,] 76 4
```