Skip to main content

A Python package for working with CLIF EHR data

Project description

clifpy - Python Client for CLIF

CLIF Logo

Transform critical care data into actionable insights

PyPI version Python Versions License Documentation uv

Documentation | Quick Start | CLIF Website

Standardized framework for critical care data analysis and research

CLIFpy is the official Python implementation for working with CLIF (Common Longitudinal ICU data Format) data. Transform heterogeneous ICU data into standardized, analysis-ready datasets with built-in validation, clinical calculations, and powerful data manipulation tools.

Key Features

  • 📊 Comprehensive CLIF Support: Full implementation of all CLIF 2.0 tables with automatic schema validation
  • 🏥 Clinical Calculations: Built-in SOFA scores, comorbidity indices, and other ICU-specific metrics
  • 💊 Smart Unit Conversion: Automatically standardize medication dosages across different unit systems
  • 🔗 Encounter Stitching: Link related ICU stays within configurable time windows
  • High Performance: Leverages DuckDB and Polars for efficient processing of large datasets
  • 🌍 Timezone Aware: Proper timestamp handling across different healthcare systems
  • 📈 Wide Format Support: Transform longitudinal data into hourly resolution for analysis

Installation

pip install clifpy

Quick Example

from clifpy import ClifOrchestrator

# Load and validate CLIF data
orchestrator = ClifOrchestrator(
    data_directory='/path/to/clif/data',
    timezone='US/Eastern'
)

# Validate all tables against CLIF schemas
orchestrator.validate_all()

# Access individual tables
vitals = orchestrator.vitals.df
labs = orchestrator.labs.df

# Advanced features
wide_df = orchestrator.create_wide_dataset()  # Hourly resolution data
sofa_scores = orchestrator.compute_sofa_scores()  # Calculate SOFA scores

Development

CLIFpy uses uv for fast, reliable dependency management.

Quick Setup

  1. Install uv:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Clone and install:

    git clone https://github.com/Common-Longitudinal-ICU-data-Format/CLIFpy.git
    cd CLIFpy
    uv sync
    
  3. Run tests:

    uv run pytest
    

Feature Contributors

Feature Coder Clinician Status
SOFA Score Computation Kaveri Chhikara Will Parker Published
Respiratory Support Waterfall Kaveri Chhikara Nick Ingraham Published
Presumed Infection and ASE Vaishvik Chaudhari Kevin Buell Published
Cumulative Dose Calculation Zewei (Whiskey) Liao Future Feature
Lab Conversion Units Dema Therese Cathy Gao In Progress
CRRT Waterfall Kaveri Chhikara Shan Guleria, Jay Koyner Future Feature
Medication Unit Conversion Zewei (Whiskey) Liao Published

Links & Resources

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

clifpy-0.4.7.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

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

clifpy-0.4.7-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file clifpy-0.4.7.tar.gz.

File metadata

  • Download URL: clifpy-0.4.7.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.9

File hashes

Hashes for clifpy-0.4.7.tar.gz
Algorithm Hash digest
SHA256 d2802b178b3d13d85f18d159bad47106f3138386daba57f78282f45e739da0bd
MD5 b00c95fbee3c0ecbd45793616f0389e7
BLAKE2b-256 e526e174ded41ea3c059c71ff04b8f2e09362e936faf9aab37a76731bc77c8c8

See more details on using hashes here.

File details

Details for the file clifpy-0.4.7-py3-none-any.whl.

File metadata

  • Download URL: clifpy-0.4.7-py3-none-any.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.9

File hashes

Hashes for clifpy-0.4.7-py3-none-any.whl
Algorithm Hash digest
SHA256 0e33404c6bc08151017533fe0f083ecb1701c334ab1bd2523024c4164c886d06
MD5 19e359962bd79c75991e3fc2fe540b07
BLAKE2b-256 905a1e6ea481f7a52469881697e4594dcc237ec22e46ea93eef26f958da44e81

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