random.raster {spatialEco}R Documentation

Random raster

Description

Create a random raster or raster stack using specified distribution

Usage

random.raster(
  r = NULL,
  n.row = 50,
  n.col = 50,
  n.layers = 1,
  x = seq(1, 10),
  min = 0,
  max = 1,
  mean = 0,
  sd = 1,
  p = 0.5,
  s = 1.5,
  mask = TRUE,
  distribution = c("random", "normal", "seq", "binominal", "gaussian")
)

Arguments

r

Optional existing terra raster defining nrow/ncol

n.row

Number of rows

n.col

Number of columns

n.layers

Number of layers in resulting raster stack

x

A vector of values to sample if distribution is "sample"

min

Minimum value of raster

max

Maximum value of raster

mean

Mean of centered distribution

sd

Standard deviation of centered distribution

p

p-value for binominal distribution

s

sigma value for Gaussian distribution

mask

(TRUE/FALSE) If r is provided, mask results to r

distribution

Available distributions, c("random", "normal", "seq", "binominal", "gaussian", "sample")

Details

Options for distributions are; random, normal, seq, binominal, gaussian and sample raster(s)

Value

terra SpatRaster object with random rasters

Author(s)

Jeffrey S. Evans <jeffrey_evans@tnc.org>

Examples

library(terra)

# Using existing raster to create random binominal  
r <- rast(system.file("ex/elev.tif", package="terra"))    
( rr <- random.raster(r, n.layers = 3, distribution="binominal") )
  plot(c(r,rr)) 

# default; random, nrows=50, ncols=50, n.layers=5
( rr <- random.raster() )

# specified; binominal, nrows=20, ncols=20, nlayers=5
( rr <- random.raster(n.layer=5, n.col=20, n.row=20,  
                     distribution="binominal") )

# specified; gaussian, nrows=50, ncols=50, nlayers=1
( rr <- random.raster(n.col=50, n.row=50, s=8,  
                      distribution="gaussian") )
   plot(rr)
 
# specified; sample, nrows=50, ncols=50, nlayers=1
( rr <- random.raster(n.layer=1, x=c(2,6,10,15), 
                     distribution="sample" ) )
  freq(rr)


[Package spatialEco version 2.0-2 Index]