Skip to main content

A Python library for ROC curve analysis, comparison, and visualization.

Project description

pAUC Logo

pAUC: A simple Python package to calculate ROC AUC confidence intervals using DeLong’s method

pAUC is an intuitive Python library for creating, comparing, and visualizing Receiver Operating Characteristic (ROC) curves. It provides a clean, object-oriented interface designed for rigorous statistical analysis of binary and multi-class classifiers.

The library is built for researchers and data scientists who need reliable statistical tests and publication-quality plots with minimal effort. It implements several key methods for comparing models, and calculating confidence intervals.


Key Features 🔬

  • ROC Curve Generation: Easily create ROC objects from true labels and prediction scores.
  • Statistical Comparison: Compare two ROC curves using multiple methods:
    • DeLong's test for correlated or uncorrelated curves.
    • Bootstrap-based tests for flexible comparisons.
    • Venkatraman's test for a non-parametric alternative.
  • Confidence Intervals: Calculate CIs for AUC, partial AUC, and coordinates (sensitivity/specificity) using bootstrapping or DeLong's method.
  • Partial AUC (pAUC): Analyze specific regions of the ROC curve, focusing on high specificity or high sensitivity.
  • Multi-Class Analysis: Native support for one-vs-one multi-class ROC analysis using Hand & Till's method.
  • Curve Smoothing: Smooth ROC curves using polynomial or binormal methods.
  • Plotting: A simple but powerful plotting function to visualize and annotate one or more curves.

Installation 💻

To install the package, clone the repository and use pip to install it in your local environment.

git clone https://github.com/srijitseal/pauc.git
cd pauc
pip install .

For development, you can install it in "editable" mode, which links the installation to your source files:

pip install -e .

pAUC requires the following packages:

  • numpy
  • scipy
  • matplotlib

Contributing

Contributions are welcome! Whether it's bug reports, feature requests, or code contributions, please feel free to open an issue or pull request on our GitHub repository.


License

This project is licensed under the MIT License. See the LICENSE file for details.

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

pauc-0.2.2.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

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

pauc-0.2.2-py3-none-any.whl (13.4 kB view details)

Uploaded Python 3

File details

Details for the file pauc-0.2.2.tar.gz.

File metadata

  • Download URL: pauc-0.2.2.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pauc-0.2.2.tar.gz
Algorithm Hash digest
SHA256 22fed1c6ca97d4e0c676e96148ec17e4afde9ef06c879fb76d6d6f1409d6480f
MD5 5b27130e5c27546c152fea8b818af221
BLAKE2b-256 baea35f41586daf7f69dbb0c3ac75a4047798c3d76f7fc39999af27336520a04

See more details on using hashes here.

File details

Details for the file pauc-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: pauc-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 13.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pauc-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 985a11b1c331f499d4658d6f214cbb18d2c94690a9fcdcd1eb26ada7273bbfe1
MD5 e8d826ccc4d396a5707b80acd17dccdc
BLAKE2b-256 729f8ab1a78d24dd7f95a335c99706a414ced65df8bed27ed6be75284f81fb42

See more details on using hashes here.

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