Simulate a spatial negative binomial random variable with a specific mean and covariance structure.
Usage
sprnbinom(
spcov_params,
dispersion = 1,
mean = 0,
samples = 1,
data,
randcov_params,
partition_factor,
...
)
Arguments
- spcov_params
An
spcov_params()
object.- dispersion
The dispersion value.
- mean
A numeric vector representing the mean.
mean
must have length 1 (in which case it is recycled) or length equal to the number of rows indata
. The default is0
.- samples
The number of independent samples to generate. The default is
1
.- data
A data frame or
sf
object containing spatial information.- randcov_params
A
randcov_params()
object.- partition_factor
A formula indicating the partition factor.
- ...
Additional arguments passed to
sprnorm()
.
Value
If samples
is 1, a vector of random variables for each row of data
is returned. If samples
is greater than one, a matrix of random variables
is returned, where the rows correspond to each row of data
and the columns
correspond to independent samples.
Details
The values of spcov_params
, mean
, and randcov_params
are assumed to be on the link scale. They are used to simulate a latent normal (Gaussian)
response variable using sprnorm()
. This latent variable is the
conditional mean used with dispersion
to simulate a negative binomial random variable.
Examples
spcov_params_val <- spcov_params("exponential", de = 0.2, ie = 0.1, range = 1)
sprnbinom(spcov_params_val, data = caribou, xcoord = x, ycoord = y)
#> [1] 0 1 1 0 2 3 0 1 0 0 0 5 0 0 1 2 0 4 1 0 2 4 2 0 0 6 0 0 0 4
sprnbinom(spcov_params_val, samples = 5, data = caribou, xcoord = x, ycoord = y)
#> 1 2 3 4 5
#> [1,] 3 4 0 3 0
#> [2,] 0 7 0 10 0
#> [3,] 0 0 0 1 1
#> [4,] 1 3 0 1 1
#> [5,] 2 0 1 2 0
#> [6,] 0 0 1 3 0
#> [7,] 1 4 2 4 1
#> [8,] 1 1 0 1 1
#> [9,] 0 3 1 1 0
#> [10,] 0 1 3 0 1
#> [11,] 0 1 1 1 2
#> [12,] 1 4 2 1 1
#> [13,] 0 1 0 0 0
#> [14,] 1 0 1 0 0
#> [15,] 0 0 4 4 0
#> [16,] 1 1 0 1 6
#> [17,] 0 0 0 1 1
#> [18,] 0 6 4 0 0
#> [19,] 0 1 1 3 0
#> [20,] 0 0 0 0 4
#> [21,] 3 0 0 0 3
#> [22,] 2 0 1 1 0
#> [23,] 1 6 0 0 1
#> [24,] 2 2 1 0 1
#> [25,] 1 2 0 0 0
#> [26,] 0 2 1 0 0
#> [27,] 5 0 2 3 5
#> [28,] 0 3 0 0 0
#> [29,] 0 2 3 1 3
#> [30,] 9 1 0 0 1