Skip to main content

Various calculations for binomial confidence intervals.

Project description

Binoculars: Binomial Confidence Intervals

https://deepnote.com/project/e17fa473-51c6-45aa-8de0-980be7d2dc5f

Unit Tests codecov PyPI

This is a small package that provides functions to compute the confidence interval for a binomial proportion. I made it because I spend altogether too much time staring at the Binomial proportion confidence interval wiki page.

Presently, the package implements:

If you haven't spent a lot of time thinking about which interval you should use (and why would you want to?), I suggest using the Wilson interval or Jeffrey's interval. Jeffrey's interval is returned by default by the binomial_confidence function in this package.

You oughtn't use the normal approximation if you don't have to. It produces patently inaccurate values with low/high probabilities at low Ns. The plot at the top of this readme shows the normal approximation producing lower lower bounds of less than 0 in these cases.

Install

pip install binoculars

Usage

from binoculars import binomial_confidence

N, p = 100, 0.2

binomial_confidence(p, N)  # default to jeffrey's interval
# (0.1307892803998113, 0.28628125447599173)

binomial_confidence(p, N, tail='lower') # grab one tail
# 0.1307892803998113

# set Z value
binomial_confidence(p, N, tail='lower', z=2.58)
# 0.11212431621448567

# choose your method

binomial_confidence(p, N, method='normal')
# (0.12160000000000001, 0.2784)

binomial_confidence(p, N, method='wilson')
# (0.1333659225590988, 0.28883096192650237)

Development

I honestly do not imagine touching this a lot. But maybe you want to add one of the other interval methods?

  1. Make a python 3.6+ venv
  2. pip install -e .[test]
  3. black lib --check
  4. pytest

Later (?)

  • Add confidence intervals for odds ratios, differences
  • Add the unimplemented intervals
  • Add plots comparing the intervals to readme.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

binoculars-0.1.3.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

binoculars-0.1.3-py3-none-any.whl (4.4 kB view details)

Uploaded Python 3

File details

Details for the file binoculars-0.1.3.tar.gz.

File metadata

  • Download URL: binoculars-0.1.3.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6

File hashes

Hashes for binoculars-0.1.3.tar.gz
Algorithm Hash digest
SHA256 5e8f7c6d9ec9740696e85b45bdc62f27bed6fa0a3de237ab75312265536e8d97
MD5 cc86ae8b8561344c9c07ffb9e19dc5e3
BLAKE2b-256 ff2ac0de4e29218da41fdba4018a005cc54a708c1bac16268a434279433ca87e

See more details on using hashes here.

File details

Details for the file binoculars-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: binoculars-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 4.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6

File hashes

Hashes for binoculars-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 83a3eb0c1fc698ff0eee35c2935f535f776b80adbdcf758aa76eeae0419aa610
MD5 f9b17eb569c434f294df3d6da3a1447b
BLAKE2b-256 1f4bf5a59b1ce81a404cf093d6b83703c2fc77960323f9b116f5df378429a7b4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page