A Python library for ROC curve analysis, comparison, and visualization.
Project description
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
ROCobjects 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:
numpyscipymatplotlib
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
22fed1c6ca97d4e0c676e96148ec17e4afde9ef06c879fb76d6d6f1409d6480f
|
|
| MD5 |
5b27130e5c27546c152fea8b818af221
|
|
| BLAKE2b-256 |
baea35f41586daf7f69dbb0c3ac75a4047798c3d76f7fc39999af27336520a04
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
985a11b1c331f499d4658d6f214cbb18d2c94690a9fcdcd1eb26ada7273bbfe1
|
|
| MD5 |
e8d826ccc4d396a5707b80acd17dccdc
|
|
| BLAKE2b-256 |
729f8ab1a78d24dd7f95a335c99706a414ced65df8bed27ed6be75284f81fb42
|