MIMIC Code Repository: Code shared by the research community for the MIMIC-III database
Switch branches/tags
Clone or download


MIMIC Code Repository Build Status DOI Join the chat at https://gitter.im/MIT-LCP/mimic-code

This is a repository of code shared by the research community. The repository is intended to be a central hub for sharing, refining, and reusing code used for analysis of the MIMIC critical care database. To find out more about MIMIC, please see: https://mimic.physionet.org

You can read more about the code repository in the following open access paper: The MIMIC Code Repository: enabling reproducibility in critical care research.

Brief introduction

The repository is organized as follows:

  • benchmark - Various speed tests for indices
  • buildmimic - Scripts to build MIMIC-III in a relational database management system (RDMS), in particular postgres is our RDMS of choice
  • concepts - Useful views/summaries of the data in MIMIC-III, e.g. demographics, organ failure scores, severity of illness scores, durations of treatment, easier to analyze views, etc. The paper above describes these in detail.
  • notebooks - A collection of R markdown and Jupyter notebooks which give examples of how to extract and analyze data
  • notebooks/aline - An entire study reproduced in the MIMIC-III database - from cohort generation to hypothesis testing
  • tests - You should always have tests!
  • tutorials - Similar to the notebooks folder, but focuses on explaining concepts to new users


If you use code or concepts available in this repository, we would be grateful if you would cite the above paper as follows:

Johnson, Alistair EW, David J. Stone, Leo A. Celi, and Tom J. Pollard. "The MIMIC Code Repository: enabling reproducibility in critical care research." Journal of the American Medical Informatics Association (2017): ocx084.

If including a hyperlink to the code, we recommend you use the DOI from Zenodo rather than a GitHub URL: https://doi.org/10.5281/zenodo.821872

How to contribute

Our team has worked hard to create and share the MIMIC dataset. We encourage you to share the code that you use for data processing and analysis. Sharing code helps to make studies reproducible and promotes collaborative research. To contribute, please:

We encourage users to share concepts they have extracted by writing code which generates a materialized view. These materialized views can then be used by researchers around the world to speed up data extraction. For example, ventilation durations can be acquired by creating the ventdurations view in concepts/durations/ventilation-durations.sql.


By committing your code to the MIMIC Code Repository you agree to release the code under the MIT License attached to the repository.

Coding style

Please refer to the style guide for guidelines on formatting your code for the repository.

Building MIMIC

A Makefile build system has been created to facilitate the building of the MIMIC database, and optionally contributed views from the community. Please refer to the Makefile guide for more details.