Random sample
sampleRandom.RdTake a random sample from the cell values of a Raster* object (without replacement).
Usage
# S4 method for class 'Raster'
sampleRandom(x, size, na.rm=TRUE, ext=NULL,
cells=FALSE, rowcol=FALSE, xy=FALSE, sp=FALSE, asRaster=FALSE, ...)Arguments
- x
Raster* object
- size
positive integer giving the number of items to choose
- na.rm
logical. If
TRUE(the default),NAvalues are removed from random sample- ext
Extent object. To limit regular sampling to the area within the extent
- cells
logical. If
TRUE, sampled cell numbers are also returned- rowcol
logical. If
TRUE, sampled row and column numbers are also returned- xy
logical. If
TRUE, coordinates of sampled cells are also returned- sp
logical. If
TRUE, a SpatialPointsDataFrame is returned- asRaster
logical. If
TRUE, a Raster* object is returned with random cells with values, all other cells withNA- ...
Additional arguments as in
writeRaster. Only relevant whenasRaster=TRUE
Value
A vector, matrix (if cells=TRUE or x is a multi-layered object), or a SpatialPointsDataFrame (if sp=TRUE )
Examples
r <- raster(system.file("external/test.grd", package="raster"))
sampleRandom(r, size=10)
#> [1] 252.1049 356.3627 372.5424 412.5800 240.0186 704.8895 586.1123 298.1655
#> [9] 221.0484 239.8339
s <- stack(r, r)
sampleRandom(s, size=5, cells=TRUE, sp=TRUE)
#> coordinates cell test.1 test.2
#> 1 (180420, 331540) 4931 205.5500 205.5500
#> 2 (179300, 330220) 7543 313.9919 313.9919
#> 3 (178900, 330300) 7373 423.6889 423.6889
#> 4 (179900, 331700) 4598 409.2047 409.2047
#> 5 (178940, 329820) 8334 402.6642 402.6642