Skip to main content

clinikit

Prepared by Berat Kaan SEVEN

A lightweight, sklearn-compatible Python toolkit for tabular machine learning. clinikit bundles 14 hybrid classifiers, 5 experiment protocols, calibration utilities, label-noise diagnostics, fairness audits, and structured HTML reports behind a single drop-in package.

Research and development use only. This is an integration toolkit, not a regulated product and not a research paper of original methods. See CITATIONS.md for source-method references.

CI codecov PyPI version Python versions License: MIT Documentation Status


Why clinikit

clinikit is a complement to existing libraries, not a competitor.

Library Focus Why clinikit is different
scikit-learn General-purpose ML Adds curated experiment protocols, audit utilities, and structured reporting
Cleanlab Label noise only Integrates Cleanlab plus neighborhood conflict and LOO into one diagnostics module
MAPIE Conformal prediction only Includes selective classification as one of 14 bundled models
Fairlearn / AIF360 Fairness only The audit module bundles fairness, leakage, and documentation helpers
AutoGluon AutoML Library-first; thin AutoML wrappers exist but no auto-magic by default
PyHealth Deep learning for sequence / multimodal Tabular-only, classical ML focused, lightweight

Installation

pip install clinikit

Optional dependency groups:

pip install "clinikit[diagnostics]"   # Cleanlab-based label-noise tools
pip install "clinikit[explain]"       # SHAP and LIME wrappers
pip install "clinikit[automl]"        # TabPFN, FLAML, AutoGluon wrappers
pip install "clinikit[synthetic]"     # CTGAN / TVAE wrappers
pip install "clinikit[conformal]"     # MAPIE conformal prediction
pip install "clinikit[all]"           # Everything

Supported Python versions: 3.10, 3.11, 3.12, 3.13.


Quickstart

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split

from clinikit.datasets import load_pima
from clinikit.metrics import sensitivity, specificity
from clinikit.models import RuleAugmentedClassifier

X, y = load_pima(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, random_state=42, stratify=y
)

model = RuleAugmentedClassifier(base_estimator=LogisticRegression(max_iter=1000))
model.fit(X_train, y_train)
y_pred = model.predict(X_test)

print("Sensitivity:", sensitivity(y_test, y_pred))
print("Specificity:", specificity(y_test, y_pred))

For a complete walkthrough, see examples/quickstart.ipynb or open it in Colab.


What is in the box

14 hybrid classifiers (clinikit.models)

All sklearn-compatible, all pass sklearn.utils.estimator_checks.check_estimator.

  • RuleAugmentedClassifier
  • BoundaryRefineClassifier
  • SubgroupThresholdClassifier
  • ErrorAwareCalibrator
  • MonotonicBooster
  • HardSampleWeightedEnsemble
  • ClassConditionalImputer
  • CrossDistributionDistiller
  • SelectiveClassifier
  • InstanceAdaptiveThreshold
  • DialecticalEnsemble
  • LatentSubtypeRouter
  • IterativeLabelRefiner
  • DualViewCoTrainer

Supporting modules

  • preprocessing — imputers, scalers, outlier flags, missing indicators
  • metrics — sensitivity, specificity, NPV, PPV, F2, MCC, Brier, ECE
  • curves — ROC, PR, calibration, Decision Curve Analysis
  • protocols — 5 experiment protocols (Defensible, MaxScore, OriginalOnly, Deployment, Audit)
  • leaderboard — experiment tracking CSV with 38 columns
  • report — HTML structured report generator (Jinja2 templates)
  • audit — leakage detection, subgroup fairness, documentation checks
  • governance — audit-trail manifest templates (documentation only)
  • reproducibility — manifest files (data hash + config + library versions)
  • datasets — UCI benchmarks (PIMA, Wisconsin, UCI Heart, Frankfurt)
  • cli — Typer-based CLI: train, benchmark, audit, validate, report
  • thresholds, calibration, statistics, diagnostics, cost_sensitive, monitor, modelcard, cross_val, explainability, automl, external_val, time_split, active_learning, synthetic

Command-line interface

clinikit train      --config config.yaml
clinikit benchmark  --dataset pima --models all
clinikit audit      --data data.csv --report audit.html
clinikit validate   --model model.joblib --data data.csv
clinikit report     --leaderboard runs.csv --out report.html

Project notes

clinikit is an integration toolkit. The methods it bundles are adaptations of techniques published in the academic literature; see CITATIONS.md for source-method references. It is not a research paper of original methods, and it is not a regulated product. Research and development use only.


Contributing

Contributions are welcome. Please read CONTRIBUTING.md for the development workflow, coding standards, and pull-request process. By participating, you agree to abide by the Code of Conduct.


Citation

If you use clinikit in academic work, please cite it via the CITATION.cff file, or use:

@software{clinikit,
  author  = {SEVEN, Berat Kaan},
  title   = {clinikit: a tabular machine-learning toolkit},
  year    = {2026},
  url     = {https://github.com/clinikit/clinikit},
  version = {0.1.0}
}

License

Distributed under the MIT License. See LICENSE for the full text.

Metadata

Release files for clinikit 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for clinikit 0.1.1
File Size Uploaded Provenance Actions
clinikit-0.1.1.tar.gz 194.9 kB With provenance Details for clinikit-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for clinikit 0.1.1
File Interpreter ABI Platform Actions
clinikit-0.1.1-py3-none-any.whl Python 3 none any Details for clinikit-0.1.1-py3-none-any.whl

Total release size: 395.7 kB

Release files / clinikit-0.1.1.tar.gz

Download URL clinikit-0.1.1.tar.gz
Size 194.9 kB
Tags Source
SHA-256 checksum
How to use checksums
800d6176f13f3e881bd96788366f249314d25fa2ddc01338b09b499f916898e9
BLAKE2b-256 checksum
How to use checksums
47026354e6a83efa5a3b706173a0c7fac95f64106e986993f2469406b8ad3243
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 17, 2026.

Transparency log

Release files / clinikit-0.1.1-py3-none-any.whl

Download URL clinikit-0.1.1-py3-none-any.whl
Size 200.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aca674a68e3bf79e8fc47be093d7c2f1627baa34cc34a4224fb7a4f18916c84a
BLAKE2b-256 checksum
How to use checksums
8a906b5978ad46bdd7cf95f78d839467ec311e1d2e0c3de29729fcab157f69f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 17, 2026.

Transparency log

Security for clinikit 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for clinikit-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 17, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page