An ETL pipeline to extract MIMIC-IV data into the MEDS format.
Project description
MIMIC-IV MEDS Extraction ETL
This pipeline extracts the MIMIC-IV dataset (from physionet) into the MEDS format.
Usage:
pip install MIMIC_IV_MEDS
export DATASET_DOWNLOAD_USERNAME=$PHYSIONET_USERNAME
export DATASET_DOWNLOAD_PASSWORD=$PHYSIONET_PASSWORD
MEDS_extract-MIMIC_IV root_output_dir=$ROOT_OUTPUT_DIR
When you run this, the program will:
- Download the needed raw MIMIC files for the currently supported version into
$ROOT_OUTPUT_DIR/raw_input. - Perform initial, pre-MEDS processing on the raw MIMIC files, saving the results in
$ROOT_OUTPUT_DIR/pre_MEDS. - Construct the final MEDS cohort, and save it to
$ROOT_OUTPUT_DIR/MEDS_cohort.
You can also specify the target directories more directly, with
export DATASET_DOWNLOAD_USERNAME=$PHYSIONET_USERNAME
export DATASET_DOWNLOAD_PASSWORD=$PHYSIONET_PASSWORD
MEDS_extract-MIMIC_IV raw_input_dir=$RAW_INPUT_DIR pre_MEDS_dir=$PRE_MEDS_DIR MEDS_cohort_dir=$MEDS_COHORT_DIR
Examples and More Info:
You can run MEDS_extract-MIMIC_IV --help for more information on the arguments and options. You can also run
MEDS_extract-MIMIC_IV root_output_dir=$ROOT_OUTPUT_DIR do_demo=True
to run the entire pipeline over the publicly available, fully open MIMIC-IV demo dataset.
Expected runtime and compute needs
This pipeline can be successfully run over the full MIMIC-IV on a 5-core machine leveraging around 165GB of memory in approximately 7 hours (note this time includes the time to download all of the MIMIC-IV files as well, and this test was run on a machine with poor network transfer speeds and without any parallelization applied to the transformation steps, so these speeds can likely be greatly increased). The output folder of data is 9.8 GB. This can be reduced significantly as well as intermediate files not necessary for the final MEDS dataset are retained in additional folders. See this github issue for tracking on ensuring these directories are automatically cleaned up in the future.
📚 Citing this work
If you use this software in your research, please cite it! You can use the "Cite this repository" button on GitHub.
The citation information is maintained in the CITATION.cff file in this repository.
🔧 Common Issues / FAQ
❓ Issue: FileNotFoundError or pipeline errors during the pre_MEDS step on Ubuntu (symlinks not recognized)
Problem:
Some users running the pipeline encounter errors during the pre_MEDS step, where the scripts attempt to create symlinks but later fails to recognize or access them — even though the symlinks appear to exist in the file system.
Solution:
A do_copy=True option is available in the CLI that allows the pipeline to copy files instead of symlinking, avoiding this issue entirely (at the cost of additional disk usage). You can enable this by adding do_copy=True to your command:
MEDS_extract-MIMIC_IV root_output_dir=$ROOT_OUTPUT_DIR do_copy=True
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
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 mimic_iv_meds-0.1.0.tar.gz.
File metadata
- Download URL: mimic_iv_meds-0.1.0.tar.gz
- Upload date:
- Size: 87.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb00e63bebb7afa87ae1759a72d52cb51ae49ed4bd52ef5b0e200a8affb45bc6
|
|
| MD5 |
6fb6d0af7b41fdee4927638505ca545b
|
|
| BLAKE2b-256 |
a12188610677039e088d3adcfb23e0a6429f081bda2f76ff68da21800573241d
|
Provenance
The following attestation bundles were made for mimic_iv_meds-0.1.0.tar.gz:
Publisher:
python-build.yaml on Medical-Event-Data-Standard/MIMIC_IV_MEDS
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mimic_iv_meds-0.1.0.tar.gz -
Subject digest:
eb00e63bebb7afa87ae1759a72d52cb51ae49ed4bd52ef5b0e200a8affb45bc6 - Sigstore transparency entry: 1263643177
- Sigstore integration time:
-
Permalink:
Medical-Event-Data-Standard/MIMIC_IV_MEDS@de061a3c48f1a37876d47eb3e8750d0041877dda -
Branch / Tag:
refs/tags/0.1.0 - Owner: https://github.com/Medical-Event-Data-Standard
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-build.yaml@de061a3c48f1a37876d47eb3e8750d0041877dda -
Trigger Event:
push
-
Statement type:
File details
Details for the file mimic_iv_meds-0.1.0-py3-none-any.whl.
File metadata
- Download URL: mimic_iv_meds-0.1.0-py3-none-any.whl
- Upload date:
- Size: 18.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e6aacbe03fb33ba4ad2e1d9a2cf9f97561d18f9ee3f772d0b078a8df4406d1a
|
|
| MD5 |
6b270b85127e1ddb0be5fc11c77b24df
|
|
| BLAKE2b-256 |
54456416b0ecfc0ff0e429ae79ae7ec61ecc78036c746eca392a852678ea136b
|
Provenance
The following attestation bundles were made for mimic_iv_meds-0.1.0-py3-none-any.whl:
Publisher:
python-build.yaml on Medical-Event-Data-Standard/MIMIC_IV_MEDS
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mimic_iv_meds-0.1.0-py3-none-any.whl -
Subject digest:
1e6aacbe03fb33ba4ad2e1d9a2cf9f97561d18f9ee3f772d0b078a8df4406d1a - Sigstore transparency entry: 1263643247
- Sigstore integration time:
-
Permalink:
Medical-Event-Data-Standard/MIMIC_IV_MEDS@de061a3c48f1a37876d47eb3e8750d0041877dda -
Branch / Tag:
refs/tags/0.1.0 - Owner: https://github.com/Medical-Event-Data-Standard
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-build.yaml@de061a3c48f1a37876d47eb3e8750d0041877dda -
Trigger Event:
push
-
Statement type: