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.5.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.5-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: clifpy-0.4.5.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.5.tar.gz
Algorithm Hash digest
SHA256 9b045ba61ded303307ab3bfc167833fe53d7b4d5b8d440699b49afcfaf4e7ebf
MD5 c0e276c1ad29d3b2f8d18beb302cf370
BLAKE2b-256 f69a20d372e9dcdd0bbba3736de20e6ee73b1f10eb10d7070b281152d38668f9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: clifpy-0.4.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3de7ab9b1f24d87fa41e133b535052414be48fff89a56484c1aa25a113b717fd
MD5 1dbfab316d9a57bde9ba57260e690668
BLAKE2b-256 b8e50a7788d64969567bd7822d71bed862c49639a1d2f1c984f39e6ec7d8984a

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