When composition surveys are conducted there is a possibility of bias in calf cow ratios due to misidentifying young bulls as adult females and vice versa or missing calves. Here we address this gap with a bias term derived from a simple model of the recruitment survey observation process. See Hughes et al. (2025) Section 2.2 for a detailed description of the model.

compositionBiasCorrection(w, q, u, z, approx = F)

Arguments

w

number. The apparent number of adult females per collared animal in composition survey.

q

number in 0, 1. Ratio of bulls to cows in composition survey groups.

u

number in 0, 1. Probability of misidentifying young bulls as adult females and vice versa in composition survey.

z

number in 0, <1. Probability of missing calves in composition survey.

approx

logical. If TRUE approximate the uncertainty about the value of the composition bias correction value (c) with the log-normal distribution of c given all the supplied values of q, u, and z. If FALSE the composition bias correction value (c) is returned for each value of q, u, and z

Value

number or tibble. If approx = FALSE a vector of composition bias correction values (c) of the same length as q, u, and z. If approx = TRUE a tibble with on row per unique value of w and columns w, m, v, sig2, mu representing w, mean c, variance of c, and parameters for a log-normal approximation of the distribution of c.

References

Hughes, J., Endicott, S., Calvert, A.M. and Johnson, C.A., 2025. Integration of national demographic-disturbance relationships and local data can improve caribou population viability projections and inform monitoring decisions. Ecological Informatics, 87, p.103095. https://doi.org/10.1016/j.ecoinf.2025.103095

Examples

# number or reps
nr <- 10

compositionBiasCorrection(w = 6,
                          q = runif(nr, 0, 0.6),
                          u = runif(nr, 0, 0.2),
                          z = runif(nr, 0, 0.2),
                          approx = FALSE)
#>  [1] 1.1061125 0.9996305 0.9155783 0.9995605 1.1000009 0.9877727 1.1520015
#>  [8] 1.0088340 1.2192487 0.9887414

compositionBiasCorrection(w = 6,
                          q = runif(nr, 0, 0.6),
                          u = runif(nr, 0, 0.2),
                          z = runif(nr, 0, 0.2),
                          approx = TRUE)
#> # A tibble: 1 × 5
#>       w     m       v    sig2     mu
#>   <dbl> <dbl>   <dbl>   <dbl>  <dbl>
#> 1     6  1.07 0.00569 0.00495 0.0664