Skip to main content

Distribution-free simultaneous confidence bands for ROC curves

Project description

rocci

PyPI Python versions CI Merge gates coverage Docs License

Distribution-free simultaneous confidence bands for ROC curves.

rocci is a simple interface to easily add uncertainty estimates to your ROC curve. It draws a simultaneous confidence band, which maintains the specified confidence of capturing the entire true (population) ROC. rocci uses a new nonparametric method by default that is likely to work with nearly all common data distributions.

from rocci import roc_band

band = roc_band(y_true, y_score)
band.plot()
print(band.summary())

Why rocci

rocci is designed to:

  • just work. It does the right thing off the shelf for nearly any data set.
  • drop in to your workflow. It natively integrates with sklearn, torch, statsmodels, PyMC/arviz, and pandas/polars data.
  • be fast. A rust backend blazes through the algorithm.
  • make a minimal footprint. The only hard dependency is numpy.
  • clear an unreasonably high bar of rigor. Method is validated with millions of simulations across diverse data sets, implementation is verified with exacting tests.
  • support an open ecosystem. Permissive MIT license, easy extensibility.

If you are comfortable adding a normality assumption to get tighter bands, rocci yields the tighter "Working-Hotelling" band, but also carefully checks the normality assumption and warns you when it looks dicey.

Installation

pip install rocci            # prebuilt wheels (no need for rust toolchain)

# optional plotting support
pip install 'rocci[plot]'

Details in the installation guide.

Docs: https://ndelaneybusch.github.io/rocci · Changelog: CHANGELOG.md · Contributing (including the release process): CONTRIBUTING.md

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

rocci-0.3.1.tar.gz (55.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

rocci-0.3.1-cp310-abi3-win_amd64.whl (244.4 kB view details)

Uploaded CPython 3.10+Windows x86-64

rocci-0.3.1-cp310-abi3-musllinux_1_2_x86_64.whl (596.6 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

rocci-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (383.9 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

rocci-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (384.6 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

rocci-0.3.1-cp310-abi3-macosx_11_0_arm64.whl (345.0 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

rocci-0.3.1-cp310-abi3-macosx_10_12_x86_64.whl (348.1 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file rocci-0.3.1.tar.gz.

File metadata

  • Download URL: rocci-0.3.1.tar.gz
  • Upload date:
  • Size: 55.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rocci-0.3.1.tar.gz
Algorithm Hash digest
SHA256 18ea888a8bc6c8fe4037d062e64844676c8f30dcc44440a0481e81176c5dcc39
MD5 a30caf5156a337cd5293232859487d98
BLAKE2b-256 f02146f6ea5e88f36e86f99a81078bdb433682b2375883212c33ce8c7b6302f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for rocci-0.3.1.tar.gz:

Publisher: wheels.yml on ndelaneybusch/rocci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rocci-0.3.1-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: rocci-0.3.1-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 244.4 kB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rocci-0.3.1-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 2bec084985ef8b5985875baaedc534344324268f607ae1c5852a454263fd5a3d
MD5 a623c8a9f614102cc3cd0bbcae8cb442
BLAKE2b-256 cc40d9cba75e1ac1ee033891e681a3d4c1ba8152fb991f713aebd1d31c9716bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for rocci-0.3.1-cp310-abi3-win_amd64.whl:

Publisher: wheels.yml on ndelaneybusch/rocci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rocci-0.3.1-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for rocci-0.3.1-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 60dd58aac1f4303f6caf13cfb0fc109d19bc3924f812fe32befc0ebb992cb976
MD5 2baf8c57d13b3dff31c7a24b060d85e1
BLAKE2b-256 6ef9962e38c4ae72d2fc91d59389a871bbe407d295c9865219598dcd04ad5369

See more details on using hashes here.

Provenance

The following attestation bundles were made for rocci-0.3.1-cp310-abi3-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on ndelaneybusch/rocci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rocci-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rocci-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b244bbd9b89faef302dfc820609283911eafc99fdcfe1f7da25d4e448885f83e
MD5 562125c08a7c4e67e6d05f0788b7c487
BLAKE2b-256 a9701b149c8d77019aabad474988f39127f74a1f6651224ff6a681051eb6ac22

See more details on using hashes here.

Provenance

The following attestation bundles were made for rocci-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: wheels.yml on ndelaneybusch/rocci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rocci-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rocci-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d8a5bb0b88ceeabba92e6b22145d4c4c4ed5a6270bb56ec402307129973f2c41
MD5 29ce25ad13aa8676e7374b9bc026f757
BLAKE2b-256 3f358dbdf3365ac68ad4cb2feb86e19520a8d1e80258952b7aa919378a49f7bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for rocci-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: wheels.yml on ndelaneybusch/rocci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rocci-0.3.1-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: rocci-0.3.1-cp310-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 345.0 kB
  • Tags: CPython 3.10+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rocci-0.3.1-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 493acb3c4ae190ff655ac7027051c338577121b2ecb313fa093216f6f149d982
MD5 302d6a6783d45d7e710ef736973b8166
BLAKE2b-256 2c1026c75282294f83881bd8fa01912f6f251f38dad193bdba9fb5e392199c13

See more details on using hashes here.

Provenance

The following attestation bundles were made for rocci-0.3.1-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: wheels.yml on ndelaneybusch/rocci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rocci-0.3.1-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rocci-0.3.1-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 503334e234a3f30e9a61163e030a1db1c747cc9cd76b4d392f163c8db718ee5f
MD5 63584c6911d09427ca37efa663da1474
BLAKE2b-256 de00ebaddce56e5a59ef1f6e4302154808ba6dc3215a6f9271613c0ddcf5c002

See more details on using hashes here.

Provenance

The following attestation bundles were made for rocci-0.3.1-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: wheels.yml on ndelaneybusch/rocci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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