tmcd82070 / CAMP_RST

R code for CAMP rotary screw trap platform
1 stars 1 forks source link

Bootstrapped Confidence Intervals Translated Away from Passage Estimate #97

Closed jasmyace closed 7 years ago

jasmyace commented 7 years ago

OVERVIEW: In the process of adjusting decimals for plus-counts, it was observed that sometimes, the estimate of passage for the less common seasons was less than the 95% bootstrapped lower confidence bound.

image

RESOLUTION: Fix the problem.

IMPACT: The problem appears more readily on runs and life-stages associated with smaller passage estimates, where "small" here means passage estimates on the order of tens or hundreds. It seems that nobody has observed this behavior yet, which suggests this update will probably go unnoticed.

DETAILS: Quite some time ago, in tinkering around for a reason that currently escapes me, I changed a condition in the construction of bootstrapped samples concerning catch. Historically, a conditional was in place to identify models with a single beta parameter with a very large negative value. The models for which this conditional were true were those for which the entirety of the catch history was zero. In this way, trapping instances where nothing was caught were correctly and appropriately modeled, and also bootstrapped correctly. Note that in this case, the correct model was an intercept-only model through zero, i.e., y = 0, where y is catch.

Bootstrapping generally involves sampling lots of times, with the expectation that some samples will produce an estimate of a statistic (passage in this case) that's greater than what was actually observed, and sometimes will be less. The resulting distribution over many samples then provides us with a confidence interval. However, when the statistic of interest legitimately equals zero, and negative values don't make any sense, it can get a bit dicey, as it becomes difficult to form a distribution. Because of this, a conditional was in place to deal with this special case accordingly.

The change that I apparently erroneously made at some point increased the threshold for identifying these special zero-catch models. While now we technically never have models of this type anymore (because we now delete out all preceding and antecedent zeros before and after the first and last catch), the threshold to which I had changed the beta parameter (from -10 to -2) is way too extreme. This means that intercept-only models with a small amount of (non-zero) catch were treated as if they were in fact zero catch. This manifests most readily on the smaller seasons, where the small number of catch often necessitates the use of an intercept-only model. Recall that graduation to the next fancier model, a linear model, requires at least 15 data points. So, these non-zero, but low, catch models were falling into the conditional designed for zero-catch trapping experiences. This, in turn, led to beta paramters being mapped to -2, from what was originally a lower value. This means that estimates of catch were then biased high (for boostrapping only), which finally, led to confidence intervals being biased high.

So, in the highlighted cells in the Excel above, the confidence interval is high. The passage is correct. Changing the value of the beta paramter conditional led to passage and the confidence interval falling in line.

image