Skip to content

Allow undefined standardized bootstrap draws without aborting estimation - #240

Open
lllleolin-max wants to merge 1 commit into
ACCLAB:vnbdevfrom
lllleolin-max:codex/dabest-10-small-sample-standardized-bootstrap
Open

Allow undefined standardized bootstrap draws without aborting estimation#240
lllleolin-max wants to merge 1 commit into
ACCLAB:vnbdevfrom
lllleolin-max:codex/dabest-10-small-sample-standardized-bootstrap

Conversation

@lllleolin-max

Copy link
Copy Markdown

Fixes #220. With three observations per group, some bootstrap resamples are constant. Cohen's d currently raises on their zero pooled variance and aborts the whole analysis, including Hedges' g, even when the observed samples have a well-defined effect.

Handle these degenerate draws specifically inside the bootstrap loop, retaining explicit infinite/NaN values for the existing warning and interval handling. The observed effect and direct public effect-size/permutation routines retain their existing zero-variance errors.

The regressions exercise dabest.load for both standardized effects at n=3, check the warning and finite observed effect/BCa bounds, and ensure all-constant original data still fail clearly instead of producing a p-value.

Validation: regression tests fail on the pinned vnbdev source and pass with this change; regression tests plus the existing load-error suite pass on Windows / Python 3.12 with NumPy 2.1.3 and SciPy 1.15.3. Notebook sources were edited and their Python modules regenerated with nbdev.

AI assistance: Codex with GPT-6 Astra was used to develop and test this patch.

@review-notebook-app

Copy link
Copy Markdown

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant