
Estimate exploitation rate using the Pollock et al. moment estimator
Source:R/creel-estimates-exploitation-rate.R
estimate_exploitation_rate.RdComputes 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
stratais supplied.- C
numeric. Total creel harvest estimate (from
estimate_total_catchor supplied directly). Ignored whenstratais supplied.- se_C
numeric. Standard error of the harvest estimate. Ignored when
stratais supplied.- n
integer. Total number of fish inspected in the creel survey (sampled from harvest). Ignored when
stratais supplied.- m
integer. Number of tagged fish found among the
ninspected fish. Ignored whenstratais 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 inbyfor the stratum labels).- by
character(1). Name of the stratum label column in
strata. Default"stratum". Ignored whenstrata = NULL.- aggregate
logical. If
TRUE(the default) an.overallrow containing the T-weighted aggregate exploitation rate is appended to the per-stratum estimates. Set toFALSEto suppress it. Ignored whenstrata = 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.
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