Skip to contents

Computes the seasonal exploitation rate from a combination of a tagging study and creel-survey harvest data using the moment estimator described in Pollock et al. (1994) and Jones & Pollock (2012, Ch. 19).

When strata is supplied the function takes the stratified path and returns per-stratum estimates plus a T-weighted aggregate (.overall row).

Usage

estimate_exploitation_rate(
  T = NULL,
  C = NULL,
  se_C = NULL,
  n = NULL,
  m = NULL,
  conf_level = 0.95,
  reporting_rate = 1,
  strata = NULL,
  by = NULL,
  aggregate = TRUE
)

Arguments

T

integer or numeric. Number of tagged fish released at season start. Ignored when strata is supplied.

C

numeric. Total creel harvest estimate (from estimate_total_catch or supplied directly). Ignored when strata is supplied.

se_C

numeric. Standard error of the harvest estimate. Ignored when strata is supplied.

n

integer. Total number of fish inspected in the creel survey (sampled from harvest). Ignored when strata is supplied.

m

integer. Number of tagged fish found among the n inspected fish. Ignored when strata is supplied.

conf_level

numeric confidence level for the CI. Default 0.95.

reporting_rate

numeric in (0, 1]. Tag reporting rate; when less than 1 the function adjusts \(\hat{u}\) downward: \(\hat{u}_{adj} = \hat{u} / \lambda\). Default 1.0 (full reporting). See Details.

strata

data.frame or NULL. When non-NULL, the function takes the stratified path. Required columns: stratum, T_h, C_h, se_C_h, n_h, m_h (or whatever column name is given in by for the stratum labels).

by

character(1). Name of the stratum label column in strata. Default "stratum". Ignored when strata = NULL.

aggregate

logical. If TRUE (the default) an .overall row containing the T-weighted aggregate exploitation rate is appended to the per-stratum estimates. Set to FALSE to suppress it. Ignored when strata = NULL.

Value

A creel_estimates S3 object with method = "exploitation-rate" and an estimates tibble. For the unstratified path columns are: estimate, se, ci_lower, ci_upper, n, T, C, m. For the stratified path the stratum label column comes first, followed by the same columns.

Details

Unstratified Formula

Let:

  • \(p = m / n\) — proportion of tagged fish among inspected fish,

  • \(r = C / T\) — ratio of estimated harvest to tagged fish released.

The point estimate is: $$\hat{u} = r \cdot p = \frac{C \cdot m}{T \cdot n}$$

Delta-method variance: $$\widehat{\mathrm{Var}}(\hat{u}) \approx r^2 \cdot \frac{p(1-p)}{n} + p^2 \cdot \frac{s_C^2}{T^2}$$

where \(s_C\) is se_C, the standard error of the creel harvest estimate.

Stratified Formula

For stratum \(h\), the per-stratum exploitation rate is: $$\hat{u}_h = \frac{C_h \cdot m_h}{T_h \cdot n_h}$$

with delta-method variance: $$\widehat{\mathrm{Var}}(\hat{u}_h) \approx r_h^2 \cdot \frac{p_h(1-p_h)}{n_h} + p_h^2 \cdot \frac{s_{C_h}^2}{T_h^2}$$

The T-weighted aggregate over \(H\) strata is: $$\hat{u} = \frac{\sum_h T_h \hat{u}_h}{\sum_h T_h}$$

with variance: $$\widehat{\mathrm{Var}}(\hat{u}) = \frac{\sum_h T_h^2 \, \widehat{\mathrm{Var}}(\hat{u}_h)}{(\sum_h T_h)^2}$$

This is the estimator from Jones CM & Pollock KH (2012, Ch. 19) and Pollock KH, Jones CM & Brown TL (1994).

Reporting Rate Adjustment

When reporting_rate \(= \lambda < 1\), the adjusted estimate is \(\hat{u}_{adj} = \hat{u} / \lambda\) and the variance is divided by \(\lambda^2\). Note that this assumes \(\lambda\) is known without error; uncertainty in the reporting rate is not propagated. Natural mortality between tagging and the creel survey is not corrected for.

Bounds

Exploitation rate must lie in \([0, 1]\). If the point estimate or CI endpoints fall outside this range, a warning is issued and CI bounds are clamped to \([0, 1]\).

References

Pollock KH, Jones CM & Brown TL (1994). Angler Survey Methods and Their Applications in Fisheries Management. AFS Special Publication 25. American Fisheries Society.

Jones CM & Pollock KH (2012). Recreational survey methods: estimating effort, harvest, and abundance. In Zale AV et al. (eds), Fisheries Techniques (3rd ed., Ch. 19). American Fisheries Society.

Examples

# Unstratified exploitation rate
result <- estimate_exploitation_rate(
  T    = 200L,
  C    = 450.0,
  se_C = 42.0,
  n    = 180L,
  m    = 15L
)
print(result)
#> 
#> ── Creel Survey Estimates ──────────────────────────────────────────────────────
#> Method: Exploitation Rate (Mark-Recapture)
#> Variance: delta
#> Confidence level: 95%
#> 
#> # A tibble: 1 × 8
#>   estimate     se ci_lower ci_upper     n     T     C     m
#>      <dbl>  <dbl>    <dbl>    <dbl> <int> <int> <dbl> <int>
#> 1    0.188 0.0495   0.0904    0.285   180   200   450    15

# Stratified exploitation rate
strata_df <- data.frame(
  stratum = c("weekday", "weekend"),
  T_h     = c(120L, 80L),
  C_h     = c(280.0, 170.0),
  se_C_h  = c(28.0, 22.0),
  n_h     = c(110L, 70L),
  m_h     = c(9L, 6L)
)
result_strat <- estimate_exploitation_rate(
  strata = strata_df,
  by     = "stratum"
)
print(result_strat)
#> 
#> ── Creel Survey Estimates ──────────────────────────────────────────────────────
#> Method: Exploitation Rate (Mark-Recapture)
#> Variance: delta
#> Confidence level: 95%
#> Grouped by: stratum
#> 
#> # A tibble: 3 × 9
#>   stratum  estimate     se ci_lower ci_upper     n     T     C     m
#>   <chr>       <dbl>  <dbl>    <dbl>    <dbl> <int> <int> <dbl> <int>
#> 1 weekday     0.191 0.0639   0.0657    0.316   110   120   280     9
#> 2 weekend     0.182 0.0749   0.0353    0.329    70    80   170     6
#> 3 .overall    0.187 0.0487   0.0920    0.283   180   200   450    15