├── static ├── bidmc.jpg ├── SciData_logo.jpg └── Overleaf-logo-300dpi.png ├── figures ├── mimic.png ├── MIMICData.png ├── examplepatient.eps └── examplepatient.jpeg ├── datasourcetable.docx ├── firstproof ├── query.pdf ├── article.pdf ├── article_tp_ed.pdf └── instructions_for_annotating.pdf ├── documents └── mpl-ltp-cc-by.pdf ├── ISA-tab ├── a_notes_Pollard.txt ├── a_reports_Pollard.txt ├── a_physiologic_Pollard.txt ├── a_laboratory_Pollard.txt ├── a_intervention_Pollard.txt ├── a_medication_Pollard.txt ├── a_billing_Pollard.txt ├── a_dictionary_Pollard.txt ├── a_descriptive_Pollard.txt ├── i_Investigation.txt └── s_study_Pollard.txt ├── README.md ├── .gitignore ├── datasourcetable.md ├── main.tex └── notebooks └── MIMIC-paper-tables.ipynb /static/bidmc.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/static/bidmc.jpg -------------------------------------------------------------------------------- /figures/mimic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/figures/mimic.png -------------------------------------------------------------------------------- /datasourcetable.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/datasourcetable.docx -------------------------------------------------------------------------------- /figures/MIMICData.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/figures/MIMICData.png -------------------------------------------------------------------------------- /firstproof/query.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/firstproof/query.pdf -------------------------------------------------------------------------------- /firstproof/article.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/firstproof/article.pdf -------------------------------------------------------------------------------- /static/SciData_logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/static/SciData_logo.jpg -------------------------------------------------------------------------------- /figures/examplepatient.eps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/figures/examplepatient.eps -------------------------------------------------------------------------------- /documents/mpl-ltp-cc-by.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/documents/mpl-ltp-cc-by.pdf -------------------------------------------------------------------------------- /figures/examplepatient.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/figures/examplepatient.jpeg -------------------------------------------------------------------------------- /firstproof/article_tp_ed.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/firstproof/article_tp_ed.pdf -------------------------------------------------------------------------------- /static/Overleaf-logo-300dpi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/static/Overleaf-logo-300dpi.png -------------------------------------------------------------------------------- /firstproof/instructions_for_annotating.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MIT-LCP/mimic-iii-paper/master/firstproof/instructions_for_annotating.pdf -------------------------------------------------------------------------------- /ISA-tab/a_notes_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Notes Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) NOTEEVENTS " Deidentified notes, including nursing and physician notes, ECG reports, radiology reports, and discharge summaries." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | -------------------------------------------------------------------------------- /ISA-tab/a_reports_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Reports Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) NOTEEVENTS " Deidentified notes, including nursing and physician notes, ECG reports, radiology reports, and discharge summaries." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Paper describing the MIMIC-III critical care database 2 | 3 | This repository contains the content (Latex, code) used to create the official citation for the MIMIC-III Critical Care Database. The citation is: 4 | 5 | > MIMIC-III, a freely accessible critical care database. Johnson AEW, Pollard TJ, Shen L, Lehman L, Feng M, Ghassemi M, Moody B, Szolovits P, Celi LA, and Mark RG. Scientific Data 3:160035 doi: 10.1038/sdata.2016.35 (2016). http://www.nature.com/articles/sdata201635 6 | 7 | For more information on MIMIC-III, see: http://mimic.physionet.org/ 8 | -------------------------------------------------------------------------------- /ISA-tab/a_physiologic_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Physiologic Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) CHARTEVENTS All charted observations for patients. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | Physiologic Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) OUTPUTEVENTS Output information for patients while in the ICU. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 4 | -------------------------------------------------------------------------------- /ISA-tab/a_laboratory_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Laboratory Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) LABEVENTS Laboratory measurements for patients both within the hospital and in outpatient clinics. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | Laboratory Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) MICROBIOLOGYEVENTS Microbiology culture results and antibiotic sensitivities from the hospital database. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 4 | -------------------------------------------------------------------------------- /ISA-tab/a_intervention_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Interventions Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) CHARTEVENTS All charted observations for patients. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | Interventions Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) DATETIMEEVENTS " All recorded observations which are dates, for example time of dialysis or insertion of lines." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 4 | Interventions Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) PROCEDUREEVENTS_MV Patient procedures for the subset of patients who were monitored in the ICU using the iMDSoft MetaVision system. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | 5 | # C extensions 6 | *.so 7 | 8 | # Distribution / packaging 9 | .Python 10 | env/ 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | lib/ 18 | lib64/ 19 | parts/ 20 | sdist/ 21 | var/ 22 | *.egg-info/ 23 | .installed.cfg 24 | *.egg 25 | 26 | # PyInstaller 27 | # Usually these files are written by a python script from a template 28 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 29 | *.manifest 30 | *.spec 31 | 32 | # Installer logs 33 | pip-log.txt 34 | pip-delete-this-directory.txt 35 | 36 | # Unit test / coverage reports 37 | htmlcov/ 38 | .tox/ 39 | .coverage 40 | .coverage.* 41 | .cache 42 | nosetests.xml 43 | coverage.xml 44 | *,cover 45 | 46 | # Translations 47 | *.mo 48 | *.pot 49 | 50 | # Django stuff: 51 | *.log 52 | 53 | # Sphinx documentation 54 | docs/_build/ 55 | 56 | # PyBuilder 57 | target/ 58 | 59 | # OSX .DS_Store 60 | .DS_Store 61 | 62 | # Ignore IPython checkpoints 63 | .ipynb_checkpoints/ 64 | -------------------------------------------------------------------------------- /ISA-tab/a_medication_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Medications Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) INPUTEVENTS_CV " Intake for patients monitored using the Philips CareVue system while in the ICU, e.g. intravenous medications, enteral feeding, etc." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | Medications Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) INPUTEVENTS_MV " Intake for patients monitored using the iMDSoft MetaVision system while in the ICU, e.g. intravenous medications, enteral feeding, etc." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 4 | Medications Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) PRESCRIPTIONS Medications ordered for a given patient. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 5 | -------------------------------------------------------------------------------- /ISA-tab/a_billing_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Billing Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) CPTEVENTS Procedures recorded as Current Procedural Terminology (CPT) codes. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | Billing Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) DIAGNOSES_ICD " Hospital assigned diagnoses, coded using the International Statistical Classification of Diseases and Related Health Problems (ICD) system." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 4 | Billing Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) DRGCODES " Diagnosis Related Groups (DRG), which are used by the hospital for billing purposes." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 5 | Billing Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) PROCEDURES_ICD " Patient procedures, coded using the International Statistical Classification of Diseases and Related Health Problems (ICD) system." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 6 | -------------------------------------------------------------------------------- /ISA-tab/a_dictionary_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Dictionary Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) D_CPT High level dictionary of Current Procedural Terminology (CPT) codes. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | Dictionary Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) D_ICD_DIAGNOSES Dictionary of International Statistical Classification of Diseases and Related Health Problems (ICD-9) codes relating to diagnoses. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 4 | Dictionary Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) D_ICD_PROCEDURES Dictionary of International Statistical Classification of Diseases and Related Health Problems (ICD-9) codes relating to procedures. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 5 | Dictionary Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) D_ITEMS " Dictionary of local codes ('ITEMIDs') appearing in the MIMIC database, except those that relate to laboratory tests." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 6 | Dictionary Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) D_LABITEMS Dictionary of local codes ('ITEMIDs') appearing in the MIMIC database that relate to laboratory tests. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 7 | -------------------------------------------------------------------------------- /ISA-tab/a_descriptive_Pollard.txt: -------------------------------------------------------------------------------- 1 | Sample Name Protocol REF Protocol REF Parameter Value[deidentication standard] Assay Name Comment[description] Raw Data File Comment [Data Repository] Comment [Data Record Accession] Comment [Data Record URI] 2 | Descriptive Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) ADMISSIONS Every unique hospitalization for each patient in the database (defines HADM_ID). PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 3 | Descriptive Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) CALLOUT Information regarding when a patient was cleared for ICU discharge and when the patient was actually discharged. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 4 | Descriptive Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) CAREGIVERS Every caregiver who has recorded data in the database (defines CGID). PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 5 | Descriptive Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) ICUSTAYS Every unique ICU stay in the database (defines ICUSTAY_ID). PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 6 | Descriptive Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) PATIENTS Every unique patient in the database (defines SUBJECT_ID). PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 7 | Descriptive Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) SERVICES The clinical service under which a patient is registered. PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 8 | Descriptive Database development Deidentification Health Insurance Portability and Accountability Act (HIPAA) TRANSFERS " Patient movement from bed to bed within the hospital, including ICU admission and discharge." PhysioNet doi:10.13026/C2XW26 http://dx.doi.org/10.13026/C2XW26 9 | -------------------------------------------------------------------------------- /datasourcetable.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | ------------------------------------------------------------------------------ 4 | Table Class Source/s 5 | ------------------ -------------- ----------------------------------------- 6 | ADMISSIONS Descriptive Hospital electronic health record 7 | databases 8 | 9 | CALLOUT Descriptive Hospital electronic health record 10 | databases 11 | 12 | CAREGIVERS Descriptive Archives from critical care information 13 | systems 14 | 15 | CHARTEVENTS Physiologic, Archives from critical care information 16 | interventions systems 17 | 18 | CPTEVENTS Billing Hospital electronic health record 19 | databases 20 | 21 | D\_CPT Dictionary High level description of the dictionary 22 | available from the American Medical Association 23 | 24 | D\_ICD\_DIAGNOSES Dictionary Dictionary available from the Centers for 25 | Medicare & Medicaid Services 26 | 27 | D\_ICD\_PROCEDURES Dictionary Dictionary available from the Centers for 28 | Medicare & Medicaid Services 29 | 30 | D\_ITEMS Dictionary Archives from critical care information 31 | systems 32 | 33 | D\_LABITEMS Dictionary Hospital electronic health record 34 | databases 35 | 36 | DATETIMEEVENTS Interventions Archives from critical care information 37 | systems 38 | 39 | DIAGNOSES\_ICD Billing Hospital electronic health record 40 | databases 41 | 42 | DRGCODES Billing Hospital electronic health record 43 | databases 44 | 45 | ICUSTAYS Descriptive Hospital electronic health record 46 | databases 47 | 48 | INPUTEVENTS\_CV Medications Archives from critical care information 49 | system (Philips CareVue) 50 | 51 | INPUTEVENTS\_MV Medications Archives from critical care information 52 | system (iMDsoft MetaVision) 53 | 54 | OUTPUTEVENTS Physiologic Archives from critical care information 55 | systems 56 | 57 | LABEVENTS Laboratory Hospital electronic health record 58 | databases 59 | 60 | MICROBIOLOGYEVENTS Laboratory Hospital electronic health record 61 | databases 62 | 63 | NOTEEVENTS Notes, reports Archives from critical care information 64 | systems; hospital electronic health record databases 65 | 66 | PATIENTS Descriptive Hospital electronic health record 67 | databases; Social Security Administration Death Master File 68 | 69 | PRESCRIPTIONS Medications Hospital electronic health record 70 | databases 71 | 72 | PROCEDUREEVENTS\_MV Interventions Archives from critical care information 73 | system (iMDsoft MetaVision) 74 | 75 | PROCEDURES\_ICD Billing Hospital electronic health record 76 | databases 77 | 78 | SERVICES Descriptive Hospital electronic health record 79 | databases 80 | 81 | TRANSFERS Descriptive Hospital electronic health record 82 | databases 83 | ------------------------------------------------------------------------------ 84 | 85 | 86 | -------------------------------------------------------------------------------- /ISA-tab/i_Investigation.txt: -------------------------------------------------------------------------------- 1 | # Investigation File generated for Scientific Data with Investigation File Authoring Tool version 0.1.0 on 03/05/2016 - This metadata file is CC0 2 | ONTOLOGY SOURCE REFERENCE 3 | Term Source Name OMIT NCBITAXON UBERON ERO NCIT CMO OAE OBI 4 | Term Source File http://data.bioontology.org/ontologies/OMIT http://data.bioontology.org/ontologies/NCBITAXON http://data.bioontology.org/ontologies/UBERON http://data.bioontology.org/ontologies/ERO http://data.bioontology.org/ontologies/NCIT http://data.bioontology.org/ontologies/CMO http://data.bioontology.org/ontologies/OAE http://data.bioontology.org/ontologies/OBI 5 | Term Source Version OBO 4.0-12122013-2338 2015AA releases/2014-06-15 2013-08-02 16.03d 2.37 Vision Release; 1.1.313 2014-08-18 6 | Term Source Description Ontology for MicroRNA Target National Center for Biotechnology Information (NCBI) Organismal Classification Uber Anatomy Ontology Eagle-I Research Resource Ontology National Cancer Institute Thesaurus Clinical Measurement Ontology Ontology of Adverse Events Ontology for Biomedical Investigations 7 | INVESTIGATION 8 | Investigation Identifier 9 | Investigation Title 10 | Investigation Description 11 | Investigation Submission Date 12 | Investigation Public Release Date 13 | INVESTIGATION PUBLICATIONS 14 | Investigation PubMed ID 15 | Investigation Publication DOI 16 | Investigation Publication Author List 17 | Investigation Publication Title 18 | Investigation Publication Status 19 | Investigation Publication Status Term Accession Number 20 | Investigation Publication Status Term Source REF 21 | INVESTIGATION CONTACTS 22 | Investigation Person Last Name 23 | Investigation Person Mid Initials 24 | Investigation Person First Name 25 | Investigation Person Address 26 | Investigation Person Phone 27 | Investigation Person Fax 28 | Investigation Person Email 29 | Investigation Person Affiliation 30 | Investigation Person Roles 31 | Investigation Person Roles Term Accession Number 32 | Investigation Person Roles Term Source REF 33 | STUDY 34 | Study Identifier SDATA-16-00042A 35 | Study Title MIMIC-III, a freely accessible critical care database 36 | Study Submission Date "" 37 | Study Public Release Date "" 38 | Study Description "" 39 | Study File Name s_study_Pollard.txt 40 | Comment[Subject Keywords] "" 41 | Comment[Manuscript Licence] "" 42 | Comment[Experimental Metadata Licence] CC0 43 | Comment[Supplementary Information File Name] 44 | Comment[Supplementary Information File Type] 45 | Comment[Supplementary Information File URL] 46 | Comment[Data Repository] PhysioNet 47 | Comment[Data Record Accession] doi:10.13026/C2XW26 48 | Comment[Data Record URI] http://dx.doi.org/10.13026/C2XW26 49 | STUDY DESIGN DESCRIPTORS 50 | Study Design Type data integration objective 51 | Study Design Type Term Accession Number ERO:0100092 52 | Study Design Type Term Source REF ERO 53 | STUDY PUBLICATIONS 54 | Study PubMed ID 55 | Study Publication DOI 56 | Study Publication Author List 57 | Study Publication Title 58 | Study Publication Status 59 | Study Publication Status Term Accession Number 60 | Study Publication Status Term Source REF 61 | STUDY FACTORS 62 | Study Factor Name 63 | Study Factor Type 64 | Study Factor Type Term Accession Number 65 | Study Factor Type Term Source REF 66 | STUDY ASSAYS 67 | Study Assay Measurement Type Demographics clinical measurement intervention Billing Medical History Dictionary Pharmacotherapy clinical laboratory test medical data medical data medical data 68 | Study Assay Measurement Type Term Accession Number NCIT:C16495 CMO:0000000 ERO:0000347 NCIT:C88189 NCIT:C49702 NCIT:C15986 OAE:0000077 ERO:0100377 ERO:0100377 ERO:0100377 69 | Study Assay Measurement Type Term Source REF NCIT CMO ERO NCIT NCIT NCIT OAE ERO ERO ERO 70 | Study Assay Technology Type Electronic Medical Record Medical Record Medical Record Electronic Billing System Medical Coding Process Document Medical Record Electronic Medical Record Free Text Format Free Text Format Medical Record 71 | Study Assay Technology Type Term Accession Number NCIT:C45259 NCIT:C45258 NCIT:C45258 NCIT:C52655 NCIT:C115714 NCIT:C45258 NCIT:C45259 NCIT:C70764 NCIT:C70764 NCIT:C45258 72 | Study Assay Technology Type Term Source REF NCIT NCIT NCIT NCIT NCIT NCIT NCIT NCIT NCIT NCIT 73 | Study Assay Technology Platform "" "" "" "" "" "" "" "" "" "" 74 | Study Assay File Name a_descriptive_Pollard.txt a_physiologic_Pollard.txt a_intervention_Pollard.txt a_billing_Pollard.txt a_dictionary_Pollard.txt a_medication_Pollard.txt a_laboratory_Pollard.txt a_notes_Pollard.txt a_reports_Pollard.txt a_procedures_Pollard.txt 75 | STUDY PROTOCOLS 76 | Study Protocol Name Patient characteristics Classes of data Database development Deidentification 77 | Study Protocol Type selection information acquisition database development Deidentification 78 | Study Protocol Type Term Accession Number OBI:0001928 OBI:0600013 ERO:0001222 NCIT:C45970 79 | Study Protocol Type Term Source REF OBI OBI ERO NCIT 80 | Study Protocol Description 81 | Study Protocol URI "" "" "" "" 82 | Study Protocol Version 83 | Study Protocol Parameters Name "" "" "" deidentication standard 84 | Study Protocol Parameters Name Term Accession Number "" "" "" "" 85 | Study Protocol Parameters Name Term Source REF "" "" "" "" 86 | Study Protocol Components Name "" "" "" "" 87 | Study Protocol Components Type "" "" "" "" 88 | Study Protocol Components Type Term Accession Number "" "" "" "" 89 | Study Protocol Components Type Term Source REF "" "" "" "" 90 | STUDY CONTACTS 91 | Study Person Last Name 92 | Study Person First Name 93 | Study Person Mid Initials 94 | Study Person Email 95 | Study Person Phone 96 | Study Person Fax 97 | Study Person Address 98 | Study Person Affiliation 99 | Study Person Roles 100 | Study Person Roles Term Accession Number 101 | Study Person Roles Term Source REF 102 | Comment[Study Person ORCID] 103 | Comment[Funder] 104 | Comment[FundRef ID] 105 | Comment[Funder Term Source REF] 106 | Comment[Grant Identifier] 107 | -------------------------------------------------------------------------------- /ISA-tab/s_study_Pollard.txt: -------------------------------------------------------------------------------- 1 | Source Name Comment[critical care information system] Material Type Term Source REF Term Accession Number Characteristics[organism] Term Source REF Term Accession Number Characteristics[development stage] Term Source REF Term Accession Number Protocol REF Protocol REF Sample Name Comment[Class of data description] 2 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Descriptive Demographic detail, admission and discharge times, and dates of death. 3 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Descriptive Demographic detail, admission and discharge times, and dates of death. 4 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Physiologic Nurse-verified vital signs, approximately hourly (e.g. heart rate, blood pressure, respiratory rate). 5 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Interventions Procedures such as dialysis, imaging studies, and placement of lines. 6 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Billing Current Procedural Terminology (CPT) codes, Diagnosis-Related Group (DRG) codes, and International Classification of Diseases (ICD) codes. 7 | High level description of the dictionary available from the American Medical Association Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Dictionary Look-up tables for cross referencing concept identifiers (for example, International Classification of Diseases (ICD) codes) with associated labels. 8 | Dictionary available from the Centers for Medicare and Medicaid Services Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Dictionary Look-up tables for cross referencing concept identifiers (for example, International Classification of Diseases (ICD) codes) with associated labels. 9 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Dictionary Look-up tables for cross referencing concept identifiers (for example, International Classification of Diseases (ICD) codes) with associated labels. 10 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Dictionary Look-up tables for cross referencing concept identifiers (for example, International Classification of Diseases (ICD) codes) with associated labels. 11 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Interventions Procedures such as dialysis, imaging studies, and placement of lines. 12 | Archives from critical care information system Philips CareVue Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Medications Administration records of intravenous medications and medication orders. 13 | Archives from critical care information system iMDsoft MetaVision Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Medications Administration records of intravenous medications and medication orders. 14 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Physiologic Nurse-verified vital signs, approximately hourly (e.g. heart rate, blood pressure, respiratory rate). 15 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Laboratory Blood chemistry, hematology, urine analysis, and microbiology test results. 16 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Notes Free text notes such as provider progress notes and hospital discharge summaries. 17 | Archives from critical care information systems Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Reports Free text reports of electrocardiogram and imaging studies. 18 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Notes Free text notes such as provider progress notes and hospital discharge summaries. 19 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Reports Free text reports of electrocardiogram and imaging studies. 20 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Descriptive Demographic detail, admission and discharge times, and dates of death. 21 | Social Security Administration Death Master File Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Descriptive Demographic detail, admission and discharge times, and dates of death. 22 | Hospital electronic health record databases Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Medications Administration records of intravenous medications and medication orders. 23 | Archives from critical care information system iMDsoft MetaVision Hospital Records OMIT OMIT:0007894 Homo sapiens NCBITAXON NCBITaxon:9606 adult organism UBERON UBERON:0007023 Patient characteristics Classes of data Interventions Procedures such as dialysis, imaging studies, and placement of lines. 24 | -------------------------------------------------------------------------------- /main.tex: -------------------------------------------------------------------------------- 1 | \documentclass[english]{article} 2 | \usepackage[utf8]{inputenc} 3 | \usepackage[T1]{fontenc} 4 | \usepackage{babel} 5 | \usepackage{amsmath} 6 | \usepackage{graphicx} 7 | \usepackage{fancyhdr} 8 | \newcommand{\scidatalogo}{\includegraphics[height=36pt]{static/SciData_logo.jpg}} 9 | \newcommand{\overleaflogo}{\includegraphics[height=36pt]{static/Overleaf-logo-300dpi.png}} 10 | \pagestyle{fancy} 11 | \fancyhf{} 12 | \renewcommand{\headrulewidth}{0pt} 13 | \setlength{\headheight}{40pt} 14 | \lhead{\textsc{\scidatalogo}} 15 | \rhead{\textsc{\overleaflogo}} 16 | 17 | \begin{document} 18 | 19 | % Data Descriptor Title (110 character maximum, inc. spaces) 20 | \title{MIMIC-III, a freely accessible critical care database} 21 | 22 | \author{ 23 | Alistair E.W Johnson\textsuperscript{1{†}}, 24 | Tom J. Pollard\textsuperscript{1{†}{*}}, 25 | Lu Shen\textsuperscript{2}, \\ 26 | Li-wei Lehman\textsuperscript{1}, 27 | Mengling Feng\textsuperscript{1,3}, 28 | Mohammad Ghassemi\textsuperscript{1}, \\ 29 | Benjamin Moody\textsuperscript{1}, 30 | Peter Szolovits\textsuperscript{4}, 31 | Leo Anthony Celi\textsuperscript{1,2}, \\ 32 | Roger G. Mark\textsuperscript{1,2} 33 | } 34 | 35 | \maketitle 36 | \thispagestyle{fancy} 37 | 38 | 1. MIT Institute for Medical Engineering and Science, Massachusetts Institute of Technology, Cambridge, MA, United States 2. Beth Israel Deaconess Medical Center, Boston, MA, United States. 3. Institute for Infocomm Research, A*STAR, Singapore. 4. Clinical Decision Making Group, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA, United States \\ 39 | \\ 40 | {*}Corresponding author: Tom Pollard (tpollard@mit.edu). \\ 41 | {†}Authors contributed equally. 42 | 43 | \begin{abstract} % 170 words 44 | MIMIC-III ("Medical Information Mart for Intensive Care") is a large, single-center database comprising information relating to patients admitted to critical care units at a large tertiary care hospital. Data includes vital signs, medications, laboratory measurements, observations and notes charted by care providers, fluid balance, procedure codes, diagnostic codes, imaging reports, hospital length of stay, survival data, and more. The database supports applications including academic and industrial research, quality improvement initiatives, and higher education coursework. 45 | \end{abstract} 46 | 47 | \section*{Background \& summary} % 700 words 48 | 49 | % --- REQUIREMENTS OF THIS SECTION --- % 50 | % (700 words maximum) An overview of the study design, the assay(s) 51 | % performed, and the created data, including any background information 52 | % needed to put this study in the context of previous work and the literature. 53 | % The section should also briefly outline the broader goals that motivated 54 | % the creation of this dataset and the potential reuse value. We also 55 | % encourage authors to include a figure that provides a schematic overview 56 | % of the study and assay(s) design. This section and the other main 57 | % body sections of the manuscript should include citations to the literature 58 | % as needed \cite{cite1, cite2}. References should be included within the 59 | % manuscript file itself as our system cannot accept BibTeX bibliography files. 60 | % Authors who wish to use BibTeX to prepare their references should therefore 61 | % copy the reference list from the .bbl file that BibTeX generates and paste it 62 | % into the main manuscript .tex file (and delete the associated 63 | % \textbackslash{}bibliography and \textbackslash{}bibliographystyle commands). 64 | % ------------------------------------ % 65 | 66 | In recent years there has been a concerted move towards the adoption of digital health record systems in hospitals. In the US, for example, the number of non-federal acute care hospitals with basic digital systems increased from 9.4\% to 75.5\% over the 7 year period between 2008 and 2014 \cite{cite1}. 67 | 68 | Despite this advance, interoperability of digital systems remains an open issue, leading to challenges in data integration. As a result, the potential that hospital data offers in terms of understanding and improving care is yet to be fully realized. In parallel, the scientific research community is increasingly coming under criticism for the lack of reproducibility of studies \cite{cite2}. 69 | 70 | Here we report the release of the MIMIC-III database, an update to the widely-used MIMIC-II database (Data Citation 1). MIMIC-III integrates deidentified, comprehensive clinical data of patients admitted to the Beth Israel Deaconess Medical Center in Boston, Massachusetts, and makes it widely accessible to researchers internationally under a data use agreement (Figure 1). The open nature of the data allows clinical studies to be reproduced and improved in ways that would not otherwise be possible. 71 | 72 | Based on our experience with the previous major release of MIMIC (MIMIC-II, released in 2010) we anticipate MIMIC-III to be widely used internationally in areas such as academic and industrial research, quality improvement initiatives, and higher education coursework. 73 | 74 | % TP: add examples of usage to the previous paragraph. 75 | % Numerous papers have been published using MIMIC data over the past decade, 76 | % offering insight into areas such as X, X, and X. 77 | % MIMIC-II is currently used in numerous university courses, including ones at 78 | % Stanford, Georgia Tech, and Columbia [ref]. 79 | 80 | To recognize the increasingly broad usage of MIMIC, we have renamed the full title of the database from "Multiparameter Intelligent Monitoring in Intensive Care" to "Medical Information Mart for Intensive Care". The MIMIC-III critical care database is unique and notable for the following reasons: 81 | \begin{itemize} 82 | \item it is the only freely accessible critical care database of its kind; 83 | \item the dataset spans more than a decade, with detailed information about individual patient care; 84 | \item analysis is unrestricted once a data use agreement is accepted, enabling clinical research and education around the world. 85 | \end{itemize} 86 | 87 | \subsection*{Patient characteristics} 88 | 89 | MIMIC-III contains data associated with 53,423 distinct hospital admissions for adult patients (aged 16 years or above) admitted to critical care units between 2001 and 2012. In addition, it contains data for 7870 neonates admitted between 2001 and 2008. The data covers 38,597 distinct adult patients and 49,785 hospital admissions. The median age of adult patients is 65.8 years (Q1-Q3: 52.8 - 77.8), 55.9\% patients are male, and in-hospital mortality is 11.5\%. The median length of an ICU stay is 2.1 days (Q1-Q3: 1.2 - 4.6) and the median length of a hospital stay is 6.9 days (Q1-Q3: 4.1 - 11.9). A mean of 4579 charted observations ('chartevents') and 380 laboratory measurements ('labevents') are available for each hospital admission. Table \ref{table:patientpopulation} provides a breakdown of the adult population by care unit. 90 | 91 | The primary International Classification of Diseases (ICD-9) codes from the patient discharges are listed in Table \ref{table:icddistribution}. The top three codes across hospital admissions for patients aged 16 years and above were: 92 | \begin{itemize} 93 | \item 414.01 ("Coronary atherosclerosis of native coronary artery"), accounting for 7.1\% of all hospital admissions; 94 | \item 038.9 ("Unspecified septicemia"), accounting for 4.2\% of all hospital admissions; and 95 | \item 410.71 ("Subendocardial infarction, initial episode of care"), accounting for 3.6\% of all hospital admissions. 96 | \end{itemize} 97 | 98 | % \subsection*{Roadmap} 99 | 100 | % To maximise research potential, the database will be iteratively enhanced over subsequent minor releases. For example, we anticipate later versions of the database to incorporate data from the emergency care department of Beth Israel Deaconess Medical Center. 101 | 102 | % In the more distant future we seek to create a federated database by linking MIMIC-III with international hospital databases. Progress has been made towards this aim in collaboration with several hospitals in Europe and South America. 103 | 104 | \subsection*{Classes of data} 105 | 106 | Data available in the MIMIC-III database ranges from time-stamped, nurse-verified physiological measurements made at the bedside to free-text interpretations of imaging studies provided by the radiology department. Table \ref{table:dataclasses} gives an overview of the different classes of data available. Figure 2 shows sample data for a single patient stay in a medical intensive care unit. The patient, who was undergoing a course of chemotherapy at the time of admission, presented with febrile neutropenia, anemia, and thrombocytopenia. 107 | 108 | \section*{Methods} 109 | 110 | % --- REQUIREMENTS OF THIS SECTION --- % 111 | % The Methods should include detailed text describing any steps or procedures 112 | % used in producing the data, including full descriptions of the experimental 113 | % design, data acquisition assays, and any computational processing (e.g. 114 | % normalization, image feature extraction). Related methods should be grouped 115 | % under corresponding subheadings where possible, and methods should be described 116 | % in enough detail to allow other researchers to interpret and repeat, if required, 117 | % the full study. Specific data outputs should be explicitly referenced via data 118 | % citation (see Data Records and Data Citations, below). Authors should 119 | 120 | % previous descriptions of the methods under use, but ideally the method 121 | % descriptions should be complete enough for others to understand and reproduce 122 | % the methods and processing steps without referring to associated publications. 123 | % There is no limit to the length of the Methods section. 124 | % ------------------------------------ % 125 | 126 | The Laboratory for Computational Physiology at Massachusetts Institute of Technology is an interdisciplinary team of data scientists and practicing physicians. MIMIC-III is the third iteration of the MIMIC critical care database, enabling us to draw upon prior experience with regard to data management and integration \cite{cite3}. 127 | 128 | \subsection*{Database development} 129 | 130 | The MIMIC-III database was populated with data that had been acquired during routine hospital care, so there was no associated burden on caregivers and no interference with their workflow. Data was downloaded from several sources, including: 131 | \begin{itemize} 132 | \item archives from critical care information systems 133 | \item hospital electronic health record databases 134 | \item Social Security Administration Death Master File 135 | \end{itemize} 136 | Two different critical care information systems were in place over the data collection period: Philips CareVue Clinical Information System (models M2331A and M1215A; Philips Health-care, Andover, MA) and iMDsoft MetaVision ICU (iMDsoft, Needham, MA). These systems were the source of clinical data such as: 137 | \begin{itemize} 138 | \item time-stamped nurse-verified physiological measurements (for example, hourly documentation of heart rate, arterial blood pressure, or respiratory rate); 139 | \item documented progress notes by care providers; 140 | \item continuous intravenous drip medications and fluid balances. 141 | \end{itemize} 142 | 143 | With exception to data relating to fluid intake, which differed significantly in structure between the CareVue and MetaVision systems, data was merged when building the database tables. Data which could not be merged is given a suffix to denote the data source. For example, inputs for patients monitored with the CareVue system are stored in INPUTEVENTS\_CV, whereas inputs for patients monitored with the Metavision system are stored in INPUTEVENTS\_MV. Additional information was collected from hospital and laboratory health record systems, including: 144 | \begin{itemize} 145 | \item patient demographics and in-hospital mortality. 146 | \item laboratory test results (for example, hematology, chemistry, and microbiology results). 147 | \item discharge summaries and reports of electrocardiogram and imaging studies. 148 | \item billing-related information such as International Classification of Disease, 9th Edition (ICD-9) codes, Diagnosis Related Group (DRG) codes, and Current Procedural Terminology (CPT) codes. 149 | \end{itemize} 150 | Out-of-hospital mortality dates were obtained using the Social Security Administration Death Master File. A more detailed description of the data is shown in Table \ref{table:patientpopulation}. Physiological waveforms obtained from bedside monitors (such as electrocardiograms, blood pressure waveforms, photoplethysmograms, impedance pneumograms) were obtained for a subset of patients. 151 | 152 | Several projects are ongoing to map concepts within the MIMIC database to standardized dictionaries. For example, researchers at the National Library of Medicine National Institutes of Health have mapped laboratory tests and medications in MIMIC-II to LOINC and RxNorm, respectively \cite{abhyankar2012}. Efforts are also underway to transform MIMIC to common data models, such as the Observational Medical Outcomes Partnership Common Data Model, to support the application of standardized tools and methods \cite{cite8}. These developments are progressively incorporated into the MIMIC database where possible. 153 | 154 | The project was approved by the Institutional Review Boards of Beth Israel Deaconess Medical Center (Boston, MA) and the Massachusetts Institute of Technology (Cambridge, MA). Requirement for individual patient consent was waived because the project did not impact clinical care and all protected health information was deidentified. 155 | 156 | \subsection*{Deidentification} 157 | 158 | Before data was incorporated into the MIMIC-III database, it was first deidentified in accordance with Health Insurance Portability and Accountability Act (HIPAA) standards using structured data cleansing and date shifting. The deidentification process for structured data required the removal of all eighteen of the identifying data elements listed in HIPAA, including fields such as patient name, telephone number, address, and dates. In particular, dates were shifted into the future by a random offset for each individual patient in a consistent manner to preserve intervals, resulting in stays which occur sometime between the years 2100 and 2200. Time of day, day of the week, and approximate seasonality were conserved during date shifting. Dates of birth for patients aged over 89 were shifted to obscure their true age and comply with HIPAA regulations: these patients appear in the database with ages of over 300 years. 159 | 160 | Protected health information was removed from free text fields, such as diagnostic reports and physician notes, using a rigorously evaluated deidentification system based on extensive dictionary look-ups and pattern-matching with regular expressions \cite{cite5}. The components of this deidentification system are continually expanded as new data is acquired. 161 | 162 | \subsection*{Code availability} 163 | 164 | % --- REQUIREMENTS OF THIS SECTION --- % 165 | %For all studies using custom code in the generation or processing of datasets, 166 | %a statement must be included here, indicating whether and how the code can be 167 | %accessed, including any restrictions to access. This section should also include 168 | %information on the versions of any software used, if relevant, and any specific 169 | %variables or parameters used to generate, test, or process the current dataset. 170 | % ------------------------------------ % 171 | 172 | %TODO: I feel like the buildmimic code should be in the mimic-iii-building repository, not the mimic-code repository We can then detail the building process here - e.g. tested with PostgreSQL v9.4, Oracle v., etc... 173 | 174 | % The code used to create the MIMIC-III database from raw hospital exports has been made available in a public archive. https://github.com/MIT-LCP/mimic-iii-building % 175 | 176 | The code that underpins the MIMIC-III website and documentation is openly available and contributions from the research community are encouraged: \\ https://github.com/MIT-LCP/mimic-website 177 | 178 | A Jupyter Notebook containing the code used to generate the tables and descriptive statistics included in this paper is available at: \\ https://github.com/MIT-LCP/mimic-iii-paper/ 179 | 180 | % Answer: 181 | % Deidentification code available at github.com/MIT-lcp/deid 182 | 183 | \section*{Data records} 184 | 185 | % --- REQUIREMENTS OF THIS SECTION --- % 186 | % Please explain each data record associated with this work, including 187 | % the repository where this information is stored, and an overview of 188 | % the data files and their formats. Each external data record should 189 | % be listed in Data Citation section at the end of this template, and 190 | % records should be cited throughout the manuscript as, for example 191 | % (Data Citation 1). 192 | 193 | % Tables should be used to support the data records, and should clearly indicate 194 | % the samples and subjects, their provenance, and the experimental manipulations 195 | % performed on each. They should also specify the data output resulting from each 196 | % data-collection or analytical step, should these form part of the archived record. 197 | % Please see the submission guidelines at the \emph{Scientific Data} website, and 198 | % our Word templates for more information on preparing such tables. 199 | % ------------------------------------ % 200 | 201 | % Probably the most reasonable format: 202 | % CHARTEVENTS, IOEVENTS, DATETIMEEVENTS from two ICU databases 203 | % LABEVENTS from patient's medical record, spans across all their (?in-network) visits 204 | % ADMISSIONS from hospital level admission/discharge/transfer information 205 | % ICUSTAYEVENTS derived from ADMISSIONS 206 | % DIAGNOSES_ICD from hospital billing database 207 | % PROCEDURES_ICD from hospital billing database 208 | % DRGCODES from hospital billing database 209 | % NOTEEVENTS from hospital note entry database 210 | % POE_MED_ORDER from provider order entry database (hospital wide) 211 | % CALLOUT from hospital discharge planning database 212 | % CAREGIVERS merged from the two ICU databases 213 | % CPTEVENTS from hospital billing database 214 | % D_ICD_DIAGNOSES, D_ICD_PROCEDURES, D_CPT from openly available sources 215 | % D_LABITEMS from the same data that the labs were derived - the ITEMIDs were generated by us 216 | % PATIENTS is derived from ADMISSIONS 217 | % MICROBIOLOGYEVENTS ?? 218 | % SERVICES from hospital database 219 | % TRANSFERS is the hospital ADT data 220 | 221 | % Include a nice visualization of the data 222 | 223 | MIMIC-III is a relational database consisting of 26 tables (Data Citation 1). Tables are linked by identifiers which usually have the suffix "ID". For example, SUBJECT\_ID refers to a unique patient, HADM\_ID refers to a unique admission to the hospital, and ICUSTAY\_ID refers to a unique admission to an intensive care unit. 224 | 225 | Charted events such as notes, laboratory tests, and fluid balance are stored in a series of "events" tables. For example the OUTPUTEVENTS table contains all measurements related to output for a given patient, while the LABEVENTS table contains laboratory test results for a patient. 226 | 227 | Tables prefixed with “D\_” are dictionary tables and provide definitions for identifiers. For example, every row of CHARTEVENTS is associated with a single ITEMID which represents the concept measured, but it does not contain the actual name of the measurement. By joining CHARTEVENTS and D\_ITEMS on ITEMID, it is possible to identify the concept represented by a given ITEMID. Further detail is provided below. 228 | 229 | \subsection*{Data tables} 230 | 231 | Developing the MIMIC data model involved balancing simplicity of interpretation against closeness to ground truth. As such, the model is a reflection of underlying data sources, modified over iterations of the MIMIC database in response to user feedback. Table \ref{table:mimictables} describes how data is distributed across the data tables. Care has been taken to avoid making assumptions about the underlying data when carrying out transformations, so MIMIC-III closely represents the raw hospital data. 232 | 233 | Broadly speaking, five tables are used to define and track patient stays: ADMISSIONS; PATIENTS; ICUSTAYS; SERVICES; and TRANSFERS. Another five tables are dictionaries for cross-referencing codes against their respective definitions: D\_CPT; D\_ICD\_DIAGNOSES; D\_ICD\_PROCEDURES; D\_ITEMS; and D\_LABITEMS. The remaining tables contain data associated with patient care, such as physiological measurements, caregiver observations, and billing information. 234 | 235 | In some cases it would be possible to merge tables - for example, the D\_ICD\_PROCEDURES and CPTEVENTS tables both contain detail relating to procedures and could be combined - but our approach is to keep the tables independent for clarity, since the data sources are significantly different. Rather than combining the tables within MIMIC data model, we suggest researchers develop database views and transforms as appropriate. 236 | 237 | \section*{Technical validation} 238 | 239 | % --- REQUIREMENTS OF THIS SECTION --- % 240 | % This section presents any experiments or analyses that are needed 241 | % to support the technical quality of the dataset. This section may 242 | % be supported by up figures and tables, as needed. This is a required 243 | % section; authors must present information justifying the reliability 244 | % of their data. 245 | % ------------------------------------ % 246 | 247 | The number of structural changes were minimized to achieve the desired level of deidentification and data schema, helping to ensure that MIMIC-III closely represents the raw data collected within the Beth Israel Deaconess Medical Center. 248 | 249 | Best practice for scientific computing was followed where possible \cite{cite4}. Code used to build MIMIC-III was version controlled and developed collaboratively within the laboratory. This approach encouraged and facilitated sharing of readable code and documentation, as well as frequent feedback from colleagues. 250 | 251 | Issue tracking is used to ensure that limitations of the data and code are clearly documented and are dealt with as appropriate. The research community is encouraged to report and address issues as they are found, and a system for releasing minor database updates is in place. 252 | 253 | % TP: some measures of quality might include: 254 | % TBC... 255 | % Prior to release internal testing. Descriptive analysis conducted to ensure known features 256 | % of the patient population were represented by the data. 257 | % Data imported successfully to PostgreSQL 258 | % All ICUSTAY_ID associated with HADM_ID, all HADM_ID associated with a SUBJECT_ID 259 | % No ages < 0 260 | % Very few DODs < discharge 261 | 262 | %Every distinct ICU admission in the database (unique ICUSTAY_ID) is associated with a single hospitalization (HADM_ID), and similarly every distinct hospitalization in the database is associated with a single patient (SUBJECT_ID). 263 | 264 | \section*{Usage notes} 265 | 266 | % --- REQUIREMENTS OF THIS SECTION --- % 267 | % Brief instructions that may help other researchers reuse these dataset. 268 | % This is an optional section, but strongly encouraged when helpful 269 | % to readers. This may include discussion of software packages that 270 | % are suitable for analyzing the assay data files, suggested downstream 271 | % processing steps (e.g. normalization, etc.), or tips for integrating 272 | % or comparing this with other datasets. If needed, authors are encouraged 273 | % to provide code, programs, or data processing workflows when they may help 274 | % others analyse the data. We encourage authors to archive related code in 275 | % a DOI-issuing archive when possible, but code may also be supplied as 276 | % supplementary information files. 277 | 278 | % For studies involving privacy or safety controls on public access 279 | % to the data, this section should describe in detail these controls, 280 | % including how authors can apply to access the data, and what criteria 281 | % will be used to determine who may access the data, and any limitations 282 | % on data use. 283 | % ------------------------------------ % 284 | 285 | \subsection*{Data access} 286 | 287 | MIMIC-III is provided as a collection of comma separated value (CSV) files, along with scripts to help with importing the data into database systems including PostreSQL, MySQL, and MonetDB. As the database contains detailed information regarding the clinical care of patients, it must be treated with appropriate care and respect. Researchers are required to formally request access via a process documented on the MIMIC website \cite{cite-mimic-website}. There are two key steps that must be completed before access is granted: 288 | 289 | \begin{enumerate} 290 | \item the researcher must complete a recognized course in protecting human research participants that includes Health Insurance Portability and Accountability Act (HIPAA) requirements. 291 | \item the researcher must sign a data use agreement, which outlines appropriate data usage and security standards, and forbids efforts to identify individual patients. 292 | \end{enumerate} 293 | 294 | Approval requires at least a week. Once an application has been approved the researcher will receive emails containing instructions for downloading the database from PhysioNetWorks, a restricted access component of PhysioNet \cite{cite6}. 295 | 296 | \subsection*{Example usage} 297 | 298 | MIMIC has been used as a basis for coursework in numerous educational institutions, for example in medical analytics courses at Stanford University (course BIOMEDIN215), Massachusetts Institute of Technology (courses HST953 and HST950J/6.872), Georgia Institute of Technology (course CSE8803), University of Texas at Austin (course EE381V), and Columbia University (course G4002), amongst others. MIMIC has also provided the data that underpins a broad range of research studies, which have explored topics such as machine learning approaches for prediction of patient outcomes, clinical implications of blood pressure monitoring techniques, and semantic analysis of unstructured patient notes \cite{mimic-mayaud, mimic-lehman, mimic-velupillai, mimic-abhyankar}. 299 | 300 | % http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3724452/ 301 | % http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3609896/ 302 | % http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4587060/ 303 | % http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4147606/ 304 | 305 | A series of 'datathons' have been held alongside development of the MIMIC database. These events assemble caregivers, data scientists, and those with domain-specific knowledge with the aim of creating ideas and producing clinically relevant, reproducible research \cite{cite7}. In parallel the events introduce new researchers to MIMIC and provide a platform for continuous review and development of code and research. 306 | 307 | Documentation for the MIMIC database is available online \cite{cite-mimic-website}. The content is under continuous development and includes a list of studies that have been carried out using MIMIC. The website includes functionality that enables the research community to directly submit updates and improvements via GitHub. 308 | 309 | \subsection*{Collaborative research} 310 | 311 | Our experience is that many researchers work independently to produce code for data processing and analysis. We seek to move towards a more collaborative, iterative, and self-checking development process where researchers work together on a shared code base. To facilitate collaboration, a public code repository has been created to encourage researchers to develop and share code collectively: https://github.com/MIT-LCP/mimic-code. 312 | 313 | The repository has been seeded with code to calculate commonly utilized variables in critical care research, including severity of illness scores, comorbidity scores, and duration of various treatments such as mechanical ventilation and vasopressor use. We encourage users to incorporate this code into their research, provide improvements, and add new contributions that have potential to benefit the research community as a whole. Over time, we expect the repository to become increasingly vital for researchers working with the MIMIC-III database. 314 | 315 | Alongside work on the centralized codebase, we support efforts to transform MIMIC into common data models such the Observational Medical Outcomes Partnership Common Data Model (OMOP-CDM) \cite{cite8}. Developing these common models may help to facilitate integration with complementary datasets and to enable the application of generalized analytic tools. Important efforts to map concepts to standardized clinical ontologies are also underway. 316 | 317 | % http://www.ohdsi.org/data-standardization/the-common-data-model/ 318 | 319 | % More detail regarding the concepts derived in the repository is available \cite{?}. 320 | 321 | % TP: we may want to assign a DOI to the MIMIC Code Repository. This would allow it to be moved in future and also allow us to track citations etc 322 | 323 | \section*{Acknowledgements} 324 | 325 | % --- REQUIREMENTS OF THIS SECTION --- % 326 | % Text acknowledging non-author contributors. Acknowledgements should 327 | % be brief, and should not include thanks to anonymous referees and 328 | % editors, or effusive comments. Grant or contribution numbers may be 329 | % acknowledged. Author contributions Please describe briefly the contributions 330 | % of each author to this work on a separate line. 331 | % ------------------------------------ % 332 | 333 | This research and development was supported by grants NIH-R01-EB017205, NIH-R01-EB001659, and NIH-R01-GM104987 from the National Institutes of Health. The authors would also like to thank Philips Healthcare and staff at the Beth Israel Deaconess Medical Center, Boston, for supporting database development, and Ken Pierce for providing Figure 1. 334 | 335 | \section*{Author contributions} 336 | 337 | AEWJ, TJP, LS and LW built the MIMIC-III database. All authors gave input into the database development process and contributed to writing the paper. 338 | 339 | \section*{Competing financial interests} 340 | 341 | The authors declare no competing financial interests. 342 | 343 | \section*{Figures legends} 344 | 345 | % --- REQUIREMENTS OF THIS SECTION --- % 346 | % Figure should be referred to using a consistent numbering scheme through 347 | % the entire Data Descriptor. For initial submissions, authors may choose 348 | % to supply this document as a single PDF with embedded figures, but 349 | % separate figure image files must be provided for revisions and accepted 350 | % manuscripts. In most cases, a Data Descriptor should not contain more 351 | % than three figures, but more may be allowed when needed. We discourage 352 | % the inclusion of figures in the Supplementary Information \textendash{} 353 | % all key figures should be included here in the main Figure section. 354 | 355 | % Figure legends begin with a brief title sentence for the whole figure 356 | % and continue with a short description of what is shown in each panel, 357 | % as well as explaining any symbols used. Legend must total no more 358 | % than 350 words, and may contain literature references. 359 | % ------------------------------------ % 360 | 361 | % TP: response to reviewers. Fixed bug to display figure number in text. 362 | 363 | \noindent 364 | \textbf{Figure 1}: Overview of the MIMIC-III critical care database. \\ 365 | 366 | \noindent 367 | \textbf{Figure 2}: Sample data for a single patient stay in a medical intensive care unit. GCS is Glasgow Coma Scale; NIBP is non-invasive blood pressure; and O2 saturation is blood oxygen saturation. 368 | 369 | % Tables supporting the Data Descriptor. These can provide summary information 370 | % (sample numbers, demographics, etc.), but they should generally not 371 | % be used to present primary data (i.e. measurements). Tables containing 372 | % primary data should be submitted to an appropriate data repository. 373 | 374 | % Tables may be provided within the \LaTeX{} document or as separate 375 | % files (tab-delimited text or Excel files). Legends, where needed, 376 | % should be included here. Generally, a Data Descriptor should have 377 | % fewer than ten Tables, but more may be allowed when needed. Tables 378 | % may be of any size, but only Tables which fit onto a single printed 379 | % page will be included in the PDF version of the article (up to a maximum of three). 380 | 381 | % Maximum of three tables included in the PDF (up to 10 in total) 382 | 383 | % Table 1: 384 | % Demographics of the database 385 | \begin{center} 386 | \begin{table} 387 | \begin{tabular}{|p{2.4cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|} 388 | \hline 389 | Critical care unit & CCU & CSRU & MICU & SICU & TSICU & Total \\ 390 | \hline 391 | Distinct patients, no. (\% of total admissions) & 5,674 (14.7\%) & 8,091 (20.9\%) & 13,649 (35.4\%) & 6,372 (16.5\%) & 4,811 (12.5\%) & 38,597 (100\%) \\ 392 | \hline 393 | Hospital admissions, no. (\% of total admissions) & 7,258 (14.6\%) & 9,156 (18.4\%) & 19,770 (39.7\%) & 8,110 (16.3\%) & 5,491 (11.0\%) & 49,785 (100\%) \\ 394 | \hline 395 | Distinct ICU stays, no. (\% of total admissions) & 7,726 (14.5\%) & 9,854 (18.4\%) & 21,087 (39.5\%) & 8,891 (16.6\%) & 5,865 (11.0\%) & 53,423 (100\%) \\ 396 | \hline 397 | Age, years, median (Q1-Q3) & 70.1 (58.4-80.5) & 67.6 (57.6-76.7) & 64.9 (51.7-78.2) & 63.6 (51.4-76.5) & 59.9 (42.9-75.7) & 65.8 (52.8-77.8) \\ 398 | \hline 399 | Gender, male, \% of unit stays & 4,203 (57.9\%) & 6,000 (65.5\%) & 10,193 (51.6\%) & 4,251 (52.4\%) & 3,336 (60.7\%) & 27,983 (55.9\%) \\ 400 | \hline 401 | ICU length of stay, median days (Q1-Q3) & 2.2 (1.2-4.1) & 2.2 (1.2-4.0) & 2.1 (1.2-4.1) & 2.3 (1.3-4.9) & 2.1 (1.2-4.6) & 2.1 (1.2-4.6) \\ 402 | \hline 403 | Hospital length of stay, median days (Q1-Q3) & 5.8 (3.1-10.0) & 7.4 (5.2-11.4) & 6.4 (3.7-11.7) & 7.9 (4.4-14.2) & 7.4 (4.1-13.6) & 6.9 (4.1-11.9) \\ 404 | \hline 405 | ICU mortality, percent of unit stays & 685 (8.9\%) & 353 (3.6\%) & 2,222 (10.5\%) & 813 (9.1\%) & 492 (8.4\%) & 4,565 (8.5\%) \\ 406 | \hline 407 | Hospital mortality, percent of unit stays & 817 (11.3\%) & 424 (4.6\%) & 2,859 (14.5\%) & 1,020 (12.6\%) & 628 (11.4\%) & 5,748 (11.5\%) \\ 408 | \hline 409 | \end{tabular} 410 | \caption{Details of the MIMIC-III patient population by first critical care unit on hospital admission for patients aged 16 years and above. CCU is Coronary Care Unit; CSRU is Cardiac Surgery Recovery Unit; MICU is Medical Intensive Care Unit; SICU is Surgical Intensive Care Unit; TSICU is Trauma Surgical Intensive Care Unit.} 411 | \label{table:patientpopulation} 412 | \end{table} 413 | \end{center} 414 | 415 | % Table 2: 416 | % Distribution of ICD-9 codes 417 | 418 | \begin{center} 419 | \begin{table} 420 | \begin{tabular}{|p{3.9cm}|p{1.25cm}|p{1.25cm}|p{1.25cm}|p{1.25cm}|p{1.25cm}|p{1.25cm}|} 421 | \hline 422 | Critical care unit & 423 | CCU stays, No. (\% by unit) & 424 | CSRU stays, No. (\% by unit) & 425 | MICU stays, No. (\% by unit) & 426 | SICU stays, No. (\% by unit) & 427 | TSICU stays, No. (\% by unit) & 428 | Total stays, No. (\% by unit) \\ 429 | \hline 430 | Infectious and parasitic diseases, i.e., septicemia, other infectious and parasitic diseases, etc (001–139) 431 | & 305 (4.2\%) & 72 (0.8\%) & 3,229 (16.7\%) & 448 (5.6\%) & 152 (2.8\%) & 4,206 (8.6\%) \\ 432 | \hline 433 | Neoplasms of digestive organs and intrathoracic organs, etc. (140–239) 434 | & 126 (1.8\%) & 287 (3.2\%) & 1,415 (7.3\%) & 1,225 (15.3\%) & 466 (8.6\%) & 3,519 (7.2\%) \\ 435 | \hline 436 | Endocrine, nutritional, metabolic, and immunity (240–279) 437 | & 104 (1.4\%) & 36 (0.4\%) & 985 (5.1\%) & 178 (2.2\%) & 54 (1.0\%) & 1,357 (2.8\%) \\ 438 | \hline 439 | Diseases of the circulatory system, i.e., ischemic heart diseases, diseases of pulmonary circulation, dysrhythmias, heart failure, cerebrovascular diseases, etc. (390–459) 440 | & 5,131 (71.4\%) & 7,138 (78.6\%) & 2,638 (13.6\%) & 2,356 (29.5\%) & 684 (12.6\%) & 17,947 (36.6\%) \\ 441 | \hline 442 | Pulmonary diseases, i.e., pneumonia and influenza, chronic obstructive pulmonary disease, etc. (460–519) 443 | & 416 (5.8\%) & 141 (1.6\%) & 3,393 (17.5\%) & 390 (4.9\%) & 225 (4.1\%) & 4,565 (9.3\%) \\ 444 | \hline 445 | Diseases of the digestive system (520–579) 446 | & 264 (3.7\%) & 157 (1.7\%) & 3,046 (15.7\%) & 1,193 (14.9\%) & 440 (8.1\%) & 5,100 (10.4\%) \\ 447 | \hline 448 | Diseases of the genitourinary system, i.e., nephritis, nephrotic syndrome, nephrosis, and other diseases of the genitourinary system (580–629) 449 | & 130 (1.8\%) & 14 (0.2\%) & 738 (3.8\%) & 101 (1.3\%) & 31 (0.6\%) & 1,014 (2.1\%) \\ 450 | \hline 451 | Trauma (800–959) 452 | & 97 (1.3\%) & 494 (5.4\%) & 480 (2.5\%) & 836 (10.5\%) & 2,809 (51.7\%) & 4,716 (9.6\%) \\ 453 | \hline 454 | Poisoning by drugs and biological substances (960–979) 455 | & 50 (0.7\%) & 2 (0.0\%) & 584 (3.0\%) & 58 (0.7\%) & 11 (0.2\%) & 705 (1.4\%) \\ 456 | \hline 457 | Other & 565 (7.9\%) & 739 (8.1\%) & 2,883 (14.9\%) & 1,204 (15.1\%) & 563 (10.4\%) & 5,954 (12.1\%) \\ 458 | \hline 459 | Total & 7,188 (14.6\%) & 9,080 (18.5\%) & 19,391 (39.5\%) & 7,989 (16.3\%) & 5,435 (11.1\%) & 49,083 (100\%) \\ 460 | \hline 461 | \end{tabular} 462 | \caption{Distribution of primary International Classification of Diseases, 9th Edition (ICD-9) codes by care unit for patients aged 16 years and above. CCU is Coronary Care Unit; CSRU is Cardiac Surgery Recovery Unit; MICU is Medical Intensive Care Unit; SICU is Surgical Intensive Care Unit; TSICU is Trauma Surgical Intensive Care Unit.} 463 | \label{table:icddistribution} 464 | \end{table} 465 | \end{center} 466 | 467 | % Table 3: 468 | % Overview of MIMIC-III 469 | 470 | \begin{center} 471 | \begin{table} 472 | \begin{tabular}{|l|p{8cm}|} 473 | \hline 474 | Class of data & Description \\ 475 | \hline 476 | Billing & Coded data recorded primarily for billing and administrative purposes. Includes Current Procedural Terminology (CPT) codes, Diagnosis-Related Group (DRG) codes, and International Classification of Diseases (ICD) codes. \\ 477 | \hline 478 | Descriptive & Demographic detail, admission and discharge times, and dates of death. \\ 479 | \hline 480 | Dictionary & Look-up tables for cross referencing concept identifiers (for example, International Classification of Diseases (ICD) codes) with associated labels. \\ 481 | \hline 482 | Interventions & Procedures such as dialysis, imaging studies, and placement of lines. \\ 483 | \hline 484 | Laboratory & Blood chemistry, hematology, urine analysis, and microbiology test results. \\ 485 | \hline 486 | Medications & Administration records of intravenous medications and medication orders. \\ 487 | \hline 488 | Notes & Free text notes such as provider progress notes and hospital discharge summaries. \\ 489 | \hline 490 | Physiologic & Nurse-verified vital signs, approximately hourly (e.g. heart rate, blood pressure, respiratory rate). \\ 491 | \hline 492 | Reports & Free text reports of electrocardiogram and imaging studies. \\ 493 | \hline 494 | \end{tabular} 495 | \caption{Classes of data available in the MIMIC-III critical care database.} 496 | \label{table:dataclasses} 497 | \end{table} 498 | \end{center} 499 | 500 | % Table 4: 501 | % MIMIC data tables 502 | 503 | \begin{center} 504 | \begin{table} 505 | \begin{tabular}{|l|p{10.5cm}|} 506 | \hline 507 | Table name & Description \\ 508 | \hline 509 | ADMISSIONS & Every unique hospitalization for each patient in the database (defines HADM\_ID). \\ 510 | \hline 511 | CALLOUT & Information regarding when a patient was cleared for ICU discharge and when the patient was actually discharged. \\ 512 | \hline 513 | CAREGIVERS & Every caregiver who has recorded data in the database (defines CGID). \\ 514 | \hline 515 | CHARTEVENTS & All charted observations for patients. \\ 516 | \hline 517 | CPTEVENTS & Procedures recorded as Current Procedural Terminology (CPT) codes. \\ 518 | \hline 519 | D\_CPT & High level dictionary of Current Procedural Terminology (CPT) codes. \\ 520 | \hline 521 | D\_ICD\_DIAGNOSES & Dictionary of International Statistical Classification of Diseases and Related Health Problems (ICD-9) codes relating to diagnoses. \\ 522 | \hline 523 | D\_ICD\_PROCEDURES & Dictionary of International Statistical Classification of Diseases and Related Health Problems (ICD-9) codes relating to procedures. \\ 524 | \hline 525 | D\_ITEMS & Dictionary of local codes ('ITEMIDs') appearing in the MIMIC database, except those that relate to laboratory tests. \\ 526 | \hline 527 | D\_LABITEMS & Dictionary of local codes ('ITEMIDs') appearing in the MIMIC database that relate to laboratory tests. \\ 528 | \hline 529 | DATETIMEEVENTS & All recorded observations which are dates, for example time of dialysis or insertion of lines. \\ 530 | \hline 531 | DIAGNOSES\_ICD & Hospital assigned diagnoses, coded using the International Statistical Classification of Diseases and Related Health Problems (ICD) system. \\ 532 | \hline 533 | DRGCODES & Diagnosis Related Groups (DRG), which are used by the hospital for billing purposes. \\ 534 | \hline 535 | ICUSTAYS & Every unique ICU stay in the database (defines ICUSTAY\_ID). \\ 536 | \hline 537 | INPUTEVENTS\_CV & Intake for patients monitored using the Philips CareVue system while in the ICU, e.g. intravenous medications, enteral feeding, etc. \\ 538 | \hline 539 | INPUTEVENTS\_MV & Intake for patients monitored using the iMDSoft MetaVision system while in the ICU, e.g. intravenous medications, enteral feeding, etc. \\ 540 | \hline 541 | OUTPUTEVENTS & Output information for patients while in the ICU. \\ 542 | \hline 543 | LABEVENTS & Laboratory measurements for patients both within the hospital and in outpatient clinics. \\ 544 | \hline 545 | MICROBIOLOGYEVENTS & Microbiology culture results and antibiotic sensitivities from the hospital database. \\ 546 | \hline 547 | NOTEEVENTS & Deidentified notes, including nursing and physician notes, ECG reports, radiology reports, and discharge summaries. \\ 548 | \hline 549 | PATIENTS & Every unique patient in the database (defines SUBJECT\_ID). \\ 550 | \hline 551 | PRESCRIPTIONS & Medications ordered for a given patient. \\ 552 | \hline 553 | PROCEDUREEVENTS\_MV & Patient procedures for the subset of patients who were monitored in the ICU using the iMDSoft MetaVision system. \\ 554 | \hline 555 | PROCEDURES\_ICD & Patient procedures, coded using the International Statistical Classification of Diseases and Related Health Problems (ICD) system. \\ 556 | \hline 557 | SERVICES & The clinical service under which a patient is registered. \\ 558 | \hline 559 | TRANSFERS & Patient movement from bed to bed within the hospital, including ICU admission and discharge. \\ 560 | \hline 561 | \end{tabular} 562 | \caption{An overview of the data tables comprising the MIMIC-III (v1.3) critical care database.} 563 | \label{table:mimictables} 564 | \end{table} 565 | \end{center} 566 | 567 | \clearpage 568 | \begin{thebibliography}{1} 569 | \expandafter\ifx\csname url\endcsname\relax 570 | \def\url#1{\texttt{#1}}\fi 571 | \expandafter\ifx\csname urlprefix\endcsname\relax\def\urlprefix{URL }\fi 572 | \providecommand{\bibinfo}[2]{#2} 573 | \providecommand{\eprint}[2][]{\url{#2}} 574 | 575 | % TEMPLATE 576 | % \bibitem{cite1} 577 | % \bibinfo{author}{SURNAME, INITIAL.}, \bibinfo{author}{SURNAME, INITIAL.} \& 578 | % \bibinfo{author}{SURNAME, INITIAL.}, 579 | % \newblock \bibinfo{title}{{TITLE.}} 580 | % \newblock \emph{\bibinfo{journal}{JOURNAL}} 581 | % \textbf{\bibinfo{volume}{VOLUME}}, \bibinfo{pages}{START--END} 582 | % (\bibinfo{year}{YEAR}). 583 | 584 | \bibitem{cite1} 585 | \bibinfo{author}{Charles, D.}, 586 | \bibinfo{author}{King, J.}, \bibinfo{author}{Patel, V.} \& 587 | \bibinfo{author}{Furukawa, M.} 588 | \newblock \bibinfo{title}{{Adoption of Electronic Health record Systems 589 | among U.S. Non-federal Acute Care Hospitals}}. 590 | \newblock \emph{\bibinfo{journal}{ONC Data Brief No. 9}} 591 | (\bibinfo{year}{2013}). 592 | 593 | \bibitem{cite2} 594 | \bibinfo{author}{Collins, F.S.} \& 595 | \bibinfo{author}{Tabak, L.A.} 596 | \newblock \bibinfo{title}{{NIH plans to enhance reproducibility}}. 597 | \newblock \emph{\bibinfo{journal}{Nature}} 598 | \textbf{\bibinfo{volume}{505}}, \bibinfo{pages}{612-613} 599 | (\bibinfo{year}{2014}). 600 | 601 | \bibitem{cite3} 602 | \bibinfo{author}{Saeed, M.}, \bibinfo{author}{Villarroel, M.}, \bibinfo{author}{Reisner, A.T.}, \bibinfo{author}{Clifford, G.}, \bibinfo{author}{Lehman, L.}, \bibinfo{author}{Moody, G.}, \bibinfo{author}{Heldt, T.}, \bibinfo{author}{Kyaw, T.}, \bibinfo{author}{Moody, B.} \& 603 | \bibinfo{author}{Mark, R.G.}, 604 | \newblock \bibinfo{title}{{Multiparameter Intelligent Monitoring in Intensive Care II (MIMIC-II): A public-access intensive care unit database.}} 605 | \newblock \emph{\bibinfo{journal}{Critical Care Medicine}} 606 | \textbf{\bibinfo{volume}{39}}, \bibinfo{pages}{952--960} 607 | (\bibinfo{year}{2011}). 608 | 609 | \bibitem{cite4} 610 | \bibinfo{author}{Wilson, G.}, \bibinfo{author}{Aruliah, D.A.}, 611 | \bibinfo{author}{Brown, C.T.}, \bibinfo{author}{Chue Hong, N.}, 612 | \bibinfo{author}{Davis, M.}, \bibinfo{author}{Guy, R.T.}, 613 | \bibinfo{author}{Haddock, S.H.D.}, \bibinfo{author}{Huff, K.D.}, 614 | \bibinfo{author}{Mitchell, I.M.}, \bibinfo{author}{Plumbley, M.D.}, 615 | \bibinfo{author}{Waugh, B.}, \bibinfo{author}{White, E.P.} \& 616 | \bibinfo{author}{Wilson, P.}, 617 | \newblock \bibinfo{title}{{Best practices for scientific computing.}} 618 | \newblock \emph{\bibinfo{journal}{PLOS Biology}} 619 | \textbf{\bibinfo{volume}{12}}, \bibinfo{pages}{e1001745} 620 | (\bibinfo{year}{2014}). 621 | 622 | \bibitem{cite5} 623 | \bibinfo{author}{Neamatullah, I.}, \bibinfo{author}{Douglass, M.}, 624 | \bibinfo{author}{Lehman, L.}, \bibinfo{author}{Reisner, A.}, 625 | \bibinfo{author}{Villarroel, M.}, \bibinfo{author}{Long, W.}, 626 | \bibinfo{author}{Szolovits, P.}, \bibinfo{author}{Moody, G.}, 627 | \bibinfo{author}{Mark, R.G.} \& \bibinfo{author}{Clifford, G.}, 628 | \newblock \bibinfo{title}{{Automated de-identification of free-text medical records.}} 629 | \newblock \emph{\bibinfo{journal}{BMC Medical Informatics and Decision Making}} 630 | \textbf{\bibinfo{volume}{8}}, \bibinfo{pages}{1--32} 631 | (\bibinfo{year}{2008}). 632 | 633 | \bibitem{cite6} 634 | \bibinfo{author}{Goldberger, A.L.}, \bibinfo{author}{Amaral, L.A.N.}, 635 | \bibinfo{author}{Glass, L.}, \bibinfo{author}{Hausdorff, J.M.}, 636 | \bibinfo{author}{Ivanov, P.Ch.}, \bibinfo{author}{Mark, R.G.}, 637 | \bibinfo{author}{Mietus, J.E.}, \bibinfo{author}{Moody, G.B.}, 638 | \bibinfo{author}{Peng, C.-K.} \& \bibinfo{author}{Stanley, H.E.}, 639 | \newblock \bibinfo{title}{{PhysioBank, PhysioToolkit, and PhysioNet.}} 640 | \newblock \emph{\bibinfo{journal}{Circulation}} 641 | \textbf{\bibinfo{volume}{101}}, \bibinfo{pages}{e215----e220} 642 | (\bibinfo{year}{2000}). 643 | 644 | \bibitem{cite-mimic-website} 645 | \newblock \bibinfo{title}{{MIMIC-III Critical Care Database: Documentation and Website}} 646 | \newblock \emph{\bibinfo{journal}{http://mimic.physionet.org}} 647 | (\bibinfo{year}{Accessed: March 2016}). 648 | 649 | \bibitem{cite7} 650 | \bibinfo{author}{Aboab, J.}, \bibinfo{author}{Celi, L.A.}, 651 | \bibinfo{author}{Charlton, P.}, \bibinfo{author}{Feng, M.}, 652 | \bibinfo{author}{Ghassemi, M.}, \bibinfo{author}{Marshall, D.C.}, 653 | \bibinfo{author}{Mayaud, L.}, \bibinfo{author}{Naumann, T.}, 654 | \bibinfo{author}{McCague, N.}, \bibinfo{author}{Paik, K.E.}, 655 | \bibinfo{author}{Pollard, T.J.}, \bibinfo{author}{Resche-Rigon, M.}, 656 | \bibinfo{author}{Salciccioli, J.D.} \& \bibinfo{author}{Stone, D.J.} 657 | \newblock \bibinfo{title}{{A “datathon” model to support cross-disciplinary collaboration.}} 658 | \newblock \emph{\bibinfo{journal}{Science Translational Medicine}} 659 | \textbf{\bibinfo{volume}{8}}, \bibinfo{pages}{333--ps8} 660 | (\bibinfo{year}{2016}). 661 | 662 | \bibitem{cite8} 663 | \newblock \bibinfo{title}{{Observational Medical Outcomes Partnership Common Data Model Website.}} 664 | \newblock \emph{\bibinfo{journal}{http://www.ohdsi.org/data-standardization/the-common-data-model/}} 665 | (\bibinfo{year}{Accessed: March 2016}). 666 | 667 | \bibitem{mimic-mayaud} 668 | \bibinfo{author}{Mayaud, L.}, \bibinfo{author}{Lai, P.S.}, 669 | {Clifford, G.}, \bibinfo{author}{Tarassenko, L.}, 670 | {Celi, L.A.} \& \bibinfo{author}{Annane, D.} 671 | \newblock \bibinfo{title}{{Dynamic data during hypotensive episode improves mortality predictions among patients with sepsis and hypotension.}} 672 | \newblock \emph{\bibinfo{journal}{Critical Care Medicine}} 673 | \textbf{\bibinfo{volume}{41(4)}}, \bibinfo{pages}{954--962} 674 | (\bibinfo{year}{2014}). 675 | 676 | \bibitem{mimic-lehman} 677 | \bibinfo{author}{Lehman, L.H.}, \bibinfo{author}{Saeed, M.}, 678 | \bibinfo{author}{Talmor, D.}, \bibinfo{author}{Mark, R.G.} \& 679 | \bibinfo{author}{Malhotra, A.} 680 | \newblock \bibinfo{title}{{Methods of Blood Pressure Measurement in the ICU.}} 681 | \newblock \emph{\bibinfo{journal}{Critical Care Medicine}} 682 | \textbf{\bibinfo{volume}{41(1)}}, \bibinfo{pages}{34--40} 683 | (\bibinfo{year}{2013}). 684 | 685 | \bibitem{mimic-velupillai} 686 | \bibinfo{author}{Velupillai, S.}, \bibinfo{author}{Mowery, D.}, 687 | \bibinfo{author}{South, B.R.}, \bibinfo{author}{Kvist, M.} \& 688 | \bibinfo{author}{Dalianis, H.} 689 | \newblock \bibinfo{title}{{Recent Advances in Clinical Natural Language Processing in Support of Semantic Analysis.}} 690 | \newblock \emph{\bibinfo{journal}{Yearbook of Medical Informatics}} 691 | \textbf{\bibinfo{volume}{10(1)}}, \bibinfo{pages}{183--193} 692 | (\bibinfo{year}{2015}). 693 | 694 | \bibitem{mimic-abhyankar} 695 | \bibinfo{author}{Abhyankar, S.}, \bibinfo{author}{Demner-Fushman, D.}, 696 | \bibinfo{author}{Callaghan, F.M.} \& \bibinfo{author}{McDonald, C.J.} 697 | \newblock \bibinfo{title}{{Combining structured and unstructured data to identify a cohort of ICU patients who received dialysis.}} 698 | \newblock \emph{\bibinfo{journal}{J Am Med Inform Assoc}} 699 | \textbf{\bibinfo{volume}{21(5)}}, \bibinfo{pages}{801--807} 700 | (\bibinfo{year}{2014}). 701 | 702 | \bibitem{abhyankar2012} 703 | \bibinfo{author}{Abhyankar, S.}, \bibinfo{author}{Demner-Fushman, D.} 704 | \& \bibinfo{author}{McDonald, C.J.} 705 | \newblock \bibinfo{title}{{Standardizing clinical laboratory data for secondary use.}} 706 | \newblock \emph{\bibinfo{journal}{J Biomed Inform}} 707 | \textbf{\bibinfo{volume}{45(4)}}, \bibinfo{pages}{642--650} 708 | (\bibinfo{year}{2012}). 709 | 710 | \end{thebibliography} 711 | 712 | \section*{Data Citations} 713 | 714 | % Bibliographic information for the data records described in the manuscript. 715 | 716 | % TP: response to reviewers. Update mimic reference. 717 | 718 | 1. Pollard, T.J. \& Johnson, A.E.W. The MIMIC-III Clinical Database. \\ http://dx.doi.org/10.13026/C2XW26 (2016). 719 | 720 | \end{document} 721 | 722 | -------------------------------------------------------------------------------- /notebooks/MIMIC-paper-tables.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Code used to create tables in the MIMIC-III paper" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "## Table 2: MIMIC-II patient population by critical care unit" 15 | ] 16 | }, 17 | { 18 | "cell_type": "code", 19 | "execution_count": 6, 20 | "metadata": { 21 | "collapsed": true 22 | }, 23 | "outputs": [], 24 | "source": [ 25 | "# Import libraries\n", 26 | "import numpy as np\n", 27 | "import pandas as pd\n", 28 | "import matplotlib.pyplot as plt\n", 29 | "import psycopg2\n", 30 | "%matplotlib inline" 31 | ] 32 | }, 33 | { 34 | "cell_type": "code", 35 | "execution_count": 34, 36 | "metadata": { 37 | "collapsed": true 38 | }, 39 | "outputs": [], 40 | "source": [ 41 | "# Config\n", 42 | "sqluser = 'postgres'\n", 43 | "dbname = 'mimic'\n", 44 | "schema_name = 'mimiciii'" 45 | ] 46 | }, 47 | { 48 | "cell_type": "code", 49 | "execution_count": 43, 50 | "metadata": { 51 | "collapsed": false 52 | }, 53 | "outputs": [], 54 | "source": [ 55 | "# Connect to MIMIC\n", 56 | "con = psycopg2.connect(dbname=dbname, user=sqluser)\n", 57 | "cur = con.cursor()\n", 58 | "cur.execute('SET search_path to ' + schema_name)\n", 59 | "# cur.close()\n", 60 | "# con.close()" 61 | ] 62 | }, 63 | { 64 | "cell_type": "markdown", 65 | "metadata": {}, 66 | "source": [ 67 | "### Patient characteristics\n", 68 | "\n", 69 | "How many charted observations are available for each hospitalization?" 70 | ] 71 | }, 72 | { 73 | "cell_type": "code", 74 | "execution_count": 44, 75 | "metadata": { 76 | "collapsed": false 77 | }, 78 | "outputs": [ 79 | { 80 | "name": "stdout", 81 | "output_type": "stream", 82 | "text": [ 83 | " avg\n", 84 | "0 4579.094313\n" 85 | ] 86 | } 87 | ], 88 | "source": [ 89 | "query = \\\n", 90 | "\"\"\"\n", 91 | "WITH chartobs AS (\n", 92 | "SELECT hadm_id, count(hadm_id) as obs\n", 93 | "FROM chartevents\n", 94 | "GROUP BY hadm_id)\n", 95 | "SELECT avg(obs)\n", 96 | "FROM chartobs;\n", 97 | "\"\"\"\n", 98 | "\n", 99 | "query_output = pd.read_sql_query(query,con)\n", 100 | "print(query_output.head())" 101 | ] 102 | }, 103 | { 104 | "cell_type": "markdown", 105 | "metadata": {}, 106 | "source": [ 107 | "How many laboratory measurements are available for each hospitalization?" 108 | ] 109 | }, 110 | { 111 | "cell_type": "code", 112 | "execution_count": 39, 113 | "metadata": { 114 | "collapsed": false 115 | }, 116 | "outputs": [ 117 | { 118 | "name": "stdout", 119 | "output_type": "stream", 120 | "text": [ 121 | " avg\n", 122 | "0 380.592115\n" 123 | ] 124 | } 125 | ], 126 | "source": [ 127 | "query = \\\n", 128 | "\"\"\"\n", 129 | "WITH labobs AS (\n", 130 | "SELECT hadm_id, count(hadm_id) as obs\n", 131 | "FROM labevents\n", 132 | "GROUP BY hadm_id)\n", 133 | "SELECT avg(obs)\n", 134 | "FROM labobs;\n", 135 | "\"\"\"\n", 136 | "\n", 137 | "query_output = pd.read_sql_query(query,con)\n", 138 | "print(query_output.head())" 139 | ] 140 | }, 141 | { 142 | "cell_type": "markdown", 143 | "metadata": {}, 144 | "source": [ 145 | "These are the details that we would like to include in Table 2, grouped by first careunit:\n", 146 | "\n", 147 | "- Hospital admissions, no. (% of total admissions)\n", 148 | "- Distinct ICU stays, no. (% of total unit stays)\n", 149 | "- Age, yrs, mean ± SD\n", 150 | "- Gender, male, percent of unit stays\n", 151 | "- ICU length of stay, median days (IQR)\n", 152 | "- Hospital length of stay, median days (IQR)\n", 153 | "- ICU mortality, percent of unit stays\n", 154 | "- Hospital mortality, percent of unit stays" 155 | ] 156 | }, 157 | { 158 | "cell_type": "markdown", 159 | "metadata": {}, 160 | "source": [ 161 | "### Extract and review the data" 162 | ] 163 | }, 164 | { 165 | "cell_type": "code", 166 | "execution_count": 9, 167 | "metadata": { 168 | "collapsed": false 169 | }, 170 | "outputs": [ 171 | { 172 | "name": "stdout", 173 | "output_type": "stream", 174 | "text": [ 175 | " subject_id hadm_id icustay_id hosp_admittime hosp_dischtime \\\n", 176 | "0 3 145834 211552 2101-10-20 19:08:00 2101-10-31 13:58:00 \n", 177 | "1 4 185777 294638 2191-03-16 00:28:00 2191-03-23 18:41:00 \n", 178 | "2 6 107064 228232 2175-05-30 07:15:00 2175-06-15 16:00:00 \n", 179 | "3 9 150750 220597 2149-11-09 13:06:00 2149-11-14 10:15:00 \n", 180 | "4 11 194540 229441 2178-04-16 06:18:00 2178-05-11 19:00:00 \n", 181 | "\n", 182 | " first_careunit icu_seq dob dod icu_intime \\\n", 183 | "0 MICU 1 2025-04-11 2102-06-14 2101-10-20 19:10:11 \n", 184 | "1 MICU 1 2143-05-12 NaT 2191-03-16 00:29:31 \n", 185 | "2 SICU 1 2109-06-21 NaT 2175-05-30 21:30:54 \n", 186 | "3 MICU 1 2108-01-26 2149-11-14 2149-11-09 13:07:02 \n", 187 | "4 SICU 1 2128-02-22 2178-11-14 2178-04-16 06:19:32 \n", 188 | "\n", 189 | " icu_outtime icu_los hosp_los gender age_hosp_in age_icu_in \\\n", 190 | "0 2101-10-26 20:43:09 6.0646 10.7847 M 76.5268 76.5268 \n", 191 | "1 2191-03-17 16:46:31 1.6785 7.7590 F 47.8450 47.8450 \n", 192 | "2 2175-06-03 13:39:54 3.6729 16.3646 F 65.9407 65.9423 \n", 193 | "3 2149-11-14 20:52:14 5.3231 4.8813 M 41.7902 41.7902 \n", 194 | "4 2178-04-17 20:21:05 1.5844 25.5292 F 50.1483 50.1483 \n", 195 | "\n", 196 | " hospital_expire_flag icu_expire_flag \n", 197 | "0 0 0 \n", 198 | "1 0 0 \n", 199 | "2 0 0 \n", 200 | "3 1 1 \n", 201 | "4 0 0 \n" 202 | ] 203 | } 204 | ], 205 | "source": [ 206 | "# Join admissions, icustays, and patients tables\n", 207 | "\n", 208 | "query = \\\n", 209 | "\"\"\"\n", 210 | "WITH population as (\n", 211 | "SELECT a.subject_id, a.hadm_id, i.icustay_id, \n", 212 | " a.admittime as hosp_admittime, a.dischtime as hosp_dischtime, \n", 213 | " i.first_careunit, \n", 214 | " DENSE_RANK() over(PARTITION BY a.hadm_id ORDER BY i.intime ASC) as icu_seq,\n", 215 | " p.dob, p.dod, i.intime as icu_intime, i.outtime as icu_outtime, \n", 216 | " i.los as icu_los,\n", 217 | " round((EXTRACT(EPOCH FROM (a.dischtime-a.admittime))/60/60/24) :: NUMERIC, 4) as hosp_los, \n", 218 | " p.gender, \n", 219 | " round((EXTRACT(EPOCH FROM (a.admittime-p.dob))/60/60/24/365.242) :: NUMERIC, 4) as age_hosp_in,\n", 220 | " round((EXTRACT(EPOCH FROM (i.intime-p.dob))/60/60/24/365.242) :: NUMERIC, 4) as age_icu_in,\n", 221 | " hospital_expire_flag,\n", 222 | " CASE WHEN p.dod IS NOT NULL \n", 223 | " AND p.dod >= i.intime - interval '6 hour'\n", 224 | " AND p.dod <= i.outtime + interval '6 hour' THEN 1 \n", 225 | " ELSE 0 END AS icu_expire_flag\n", 226 | "FROM admissions a\n", 227 | "INNER JOIN icustays i\n", 228 | "ON a.hadm_id = i.hadm_id\n", 229 | "INNER JOIN patients p\n", 230 | "ON a.subject_id = p.subject_id\n", 231 | "ORDER BY a.subject_id, i.intime\n", 232 | ")\n", 233 | "SELECT *\n", 234 | "FROM population\n", 235 | "WHERE age_hosp_in >= 16;\n", 236 | "\"\"\"\n", 237 | "\n", 238 | "query_output = pd.read_sql_query(query,con)\n", 239 | "print(query_output.head())" 240 | ] 241 | }, 242 | { 243 | "cell_type": "markdown", 244 | "metadata": {}, 245 | "source": [ 246 | "### Distinct patients, no. (% of total admissions)" 247 | ] 248 | }, 249 | { 250 | "cell_type": "code", 251 | "execution_count": 10, 252 | "metadata": { 253 | "collapsed": false 254 | }, 255 | "outputs": [ 256 | { 257 | "name": "stdout", 258 | "output_type": "stream", 259 | "text": [ 260 | "\n", 261 | "Total patients: 38597\n", 262 | "\n", 263 | "Number of patients by first careunit:\n", 264 | "\n", 265 | "first_careunit CCU CSRU MICU SICU TSICU\n", 266 | "subject_id 5674 8091 13649 6372 4811\n", 267 | "\n", 268 | "Proportion of total hospital admissions:\n", 269 | "\n", 270 | "first_careunit CCU CSRU MICU SICU TSICU\n", 271 | "subject_id 14.700624 20.962769 35.362852 16.509055 12.464699\n" 272 | ] 273 | } 274 | ], 275 | "source": [ 276 | "print('\\nTotal patients: {}')\\\n", 277 | " .format(len(query_output.subject_id.unique()))\n", 278 | "\n", 279 | "print('\\nNumber of patients by first careunit:\\n')\n", 280 | "print(query_output[['first_careunit','subject_id']] \\\n", 281 | " .drop_duplicates(['subject_id']) \\\n", 282 | " .groupby('first_careunit').count()).T\n", 283 | " \n", 284 | "print('\\nProportion of total hospital admissions:\\n')\n", 285 | "print(query_output[['first_careunit','subject_id']] \\\n", 286 | " .drop_duplicates(['subject_id']) \\\n", 287 | " .groupby('first_careunit') \\\n", 288 | " .count()/len(query_output.subject_id.unique())*100).T" 289 | ] 290 | }, 291 | { 292 | "cell_type": "markdown", 293 | "metadata": {}, 294 | "source": [ 295 | "### Hospital admissions, no. (% of total admissions)" 296 | ] 297 | }, 298 | { 299 | "cell_type": "code", 300 | "execution_count": 11, 301 | "metadata": { 302 | "collapsed": false 303 | }, 304 | "outputs": [ 305 | { 306 | "name": "stdout", 307 | "output_type": "stream", 308 | "text": [ 309 | "\n", 310 | "Total hospital admissions: 49785\n", 311 | "\n", 312 | "Number of hospital admissions by first careunit:\n", 313 | "\n", 314 | "first_careunit CCU CSRU MICU SICU TSICU\n", 315 | "hadm_id 7258 9156 19770 8110 5491\n", 316 | "\n", 317 | "Proportion of total hospital admissions:\n", 318 | "\n", 319 | "first_careunit CCU CSRU MICU SICU TSICU\n", 320 | "hadm_id 14.578688 18.391082 39.710756 16.290047 11.029427\n" 321 | ] 322 | } 323 | ], 324 | "source": [ 325 | "print('\\nTotal hospital admissions: {}')\\\n", 326 | " .format(len(query_output.hadm_id.unique()))\n", 327 | "\n", 328 | "print('\\nNumber of hospital admissions by first careunit:\\n')\n", 329 | "print(query_output[['first_careunit','hadm_id']] \\\n", 330 | " .drop_duplicates(['hadm_id']) \\\n", 331 | " .groupby('first_careunit').count()).T\n", 332 | " \n", 333 | "print('\\nProportion of total hospital admissions:\\n')\n", 334 | "print(query_output[['first_careunit','hadm_id']] \\\n", 335 | " .drop_duplicates(['hadm_id']) \\\n", 336 | " .groupby('first_careunit') \\\n", 337 | " .count()/len(query_output.hadm_id.unique())*100).T" 338 | ] 339 | }, 340 | { 341 | "cell_type": "markdown", 342 | "metadata": {}, 343 | "source": [ 344 | "### Distinct ICU stays, no. (% of total unit stays)" 345 | ] 346 | }, 347 | { 348 | "cell_type": "code", 349 | "execution_count": 12, 350 | "metadata": { 351 | "collapsed": false 352 | }, 353 | "outputs": [ 354 | { 355 | "name": "stdout", 356 | "output_type": "stream", 357 | "text": [ 358 | "\n", 359 | "Total ICU stays: 53423\n", 360 | "\n", 361 | "Number of ICU stays by careunit:\n", 362 | "\n", 363 | "first_careunit CCU CSRU MICU SICU TSICU\n", 364 | "icustay_id 7726 9854 21087 8891 5865\n", 365 | "\n", 366 | "Proportion of total ICU stays:\n", 367 | "\n", 368 | "first_careunit CCU CSRU MICU SICU TSICU\n", 369 | "icustay_id 14.461936 18.445239 39.471763 16.642645 10.978418\n" 370 | ] 371 | } 372 | ], 373 | "source": [ 374 | "print('\\nTotal ICU stays: {}')\\\n", 375 | " .format(len(query_output.icustay_id.unique()))\n", 376 | "\n", 377 | "print('\\nNumber of ICU stays by careunit:\\n')\n", 378 | "print(query_output[['first_careunit','icustay_id']] \\\n", 379 | " .groupby('first_careunit').count()).T\n", 380 | "\n", 381 | "print('\\nProportion of total ICU stays:\\n')\n", 382 | "print(query_output[['first_careunit','icustay_id']] \\\n", 383 | " .groupby('first_careunit') \\\n", 384 | " .count()/len(query_output.icustay_id.unique())*100).T" 385 | ] 386 | }, 387 | { 388 | "cell_type": "markdown", 389 | "metadata": {}, 390 | "source": [ 391 | "### Age, yrs, median ± IQR" 392 | ] 393 | }, 394 | { 395 | "cell_type": "code", 396 | "execution_count": 13, 397 | "metadata": { 398 | "collapsed": false 399 | }, 400 | "outputs": [ 401 | { 402 | "name": "stdout", 403 | "output_type": "stream", 404 | "text": [ 405 | "Median age, years: 65.769 \n", 406 | "Lower quartile age, years: 52.8361 \n", 407 | "Upper quartile age, years: 77.80005 \n", 408 | " \n", 409 | "Median age by careunit, years:\n", 410 | " \n", 411 | "first_careunit CCU CSRU MICU SICU TSICU\n", 412 | "age_icu_in 70.5697 67.60415 64.9124 63.5819 59.8667\n", 413 | "\n", 414 | "Lower quartile by careunit, years:\n", 415 | " \n", 416 | "first_careunit CCU CSRU MICU SICU TSICU\n", 417 | "age_icu_in 58.44555 57.606375 51.6559 51.44315 42.9378\n", 418 | "\n", 419 | "Upper quartile by careunit, years:\n", 420 | " \n", 421 | "first_careunit CCU CSRU MICU SICU TSICU\n", 422 | "age_icu_in 80.541375 76.681425 78.17095 76.4575 75.6518\n" 423 | ] 424 | } 425 | ], 426 | "source": [ 427 | "# Better to report median IQR because >89 appear as 300\n", 428 | "print('Median age, years: {} ').format(query_output.age_icu_in.median())\n", 429 | "print('Lower quartile age, years: {} ').format(query_output.age_icu_in.quantile(0.25))\n", 430 | "print('Upper quartile age, years: {} \\n ').format(query_output.age_icu_in.quantile(0.75))\n", 431 | "\n", 432 | "print('Median age by careunit, years:\\n ')\n", 433 | "print(query_output[['first_careunit','age_icu_in']] \\\n", 434 | " .groupby('first_careunit').median()).T\n", 435 | "\n", 436 | "print('\\nLower quartile by careunit, years:\\n ')\n", 437 | "print(query_output[['first_careunit','age_icu_in']] \\\n", 438 | " .groupby('first_careunit').quantile(0.25)).T\n", 439 | "\n", 440 | "print('\\nUpper quartile by careunit, years:\\n ')\n", 441 | "print(query_output[['first_careunit','age_icu_in']] \\\n", 442 | " .groupby('first_careunit').quantile(0.75)).T\n" 443 | ] 444 | }, 445 | { 446 | "cell_type": "markdown", 447 | "metadata": {}, 448 | "source": [ 449 | "### Gender, male, percent of unit stays" 450 | ] 451 | }, 452 | { 453 | "cell_type": "code", 454 | "execution_count": 14, 455 | "metadata": { 456 | "collapsed": false 457 | }, 458 | "outputs": [ 459 | { 460 | "name": "stdout", 461 | "output_type": "stream", 462 | "text": [ 463 | "Gender:\n", 464 | "\n", 465 | "gender\n", 466 | "F 21802\n", 467 | "M 27983\n", 468 | "Name: gender, dtype: int64\n", 469 | "gender\n", 470 | "F 43.792307\n", 471 | "M 56.207693\n", 472 | "Name: gender, dtype: float64\n", 473 | "Gender by careunit:\n", 474 | "\n", 475 | "first_careunit gender\n", 476 | "CCU F 3055\n", 477 | " M 4203\n", 478 | "CSRU F 3156\n", 479 | " M 6000\n", 480 | "MICU F 9577\n", 481 | " M 10193\n", 482 | "SICU F 3859\n", 483 | " M 4251\n", 484 | "TSICU F 2155\n", 485 | " M 3336\n", 486 | "Name: gender, dtype: int64\n", 487 | "\n", 488 | "Proportion by unit:\n", 489 | "\n", 490 | "first_careunit gender\n", 491 | "CCU F 42.091485\n", 492 | " M 57.908515\n", 493 | "CSRU F 34.469201\n", 494 | " M 65.530799\n", 495 | "MICU F 48.442084\n", 496 | " M 51.557916\n", 497 | "SICU F 47.583231\n", 498 | " M 52.416769\n", 499 | "TSICU F 39.246039\n", 500 | " M 60.753961\n", 501 | "Name: gender, dtype: float64\n" 502 | ] 503 | } 504 | ], 505 | "source": [ 506 | "print('Gender:\\n')\n", 507 | "print(query_output.loc[query_output.icu_seq==1].groupby('gender').gender.count())\n", 508 | "print(query_output.loc[query_output.icu_seq==1].groupby('gender').gender.count() \\\n", 509 | " /query_output.loc[query_output.icu_seq==1].gender.count()*100)\n", 510 | "\n", 511 | "print('Gender by careunit:\\n')\n", 512 | "print(query_output.loc[query_output.icu_seq==1] \\\n", 513 | " .groupby(['first_careunit','gender']).gender.count())\n", 514 | "\n", 515 | "print('\\nProportion by unit:\\n')\n", 516 | "print(query_output.loc[query_output.icu_seq==1] \\\n", 517 | " .groupby(['first_careunit','gender']) \\\n", 518 | " .gender.count()/query_output.loc[query_output.icu_seq==1] \\\n", 519 | " .groupby(['first_careunit']).gender.count())*100" 520 | ] 521 | }, 522 | { 523 | "cell_type": "markdown", 524 | "metadata": {}, 525 | "source": [ 526 | "### ICU length of stay, median days (IQR)" 527 | ] 528 | }, 529 | { 530 | "cell_type": "code", 531 | "execution_count": 15, 532 | "metadata": { 533 | "collapsed": false 534 | }, 535 | "outputs": [ 536 | { 537 | "name": "stdout", 538 | "output_type": "stream", 539 | "text": [ 540 | "Median ICU length of stay, days: 2.14425\n", 541 | "Lower quartile ICU length of stay, days: 1.2056\n", 542 | "Upper quartile ICU length of stay, days: 4.19255\n", 543 | "\n", 544 | "Median length of ICU stay by careunit, days:\n", 545 | " \n", 546 | "first_careunit CCU CSRU MICU SICU TSICU\n", 547 | "icu_los 2.19775 2.1549 2.0956 2.2522 2.1015\n", 548 | "\n", 549 | "Lower quartile length of ICU stay, days:\n", 550 | " \n", 551 | "first_careunit CCU CSRU MICU SICU TSICU\n", 552 | "icu_los 1.213225 1.2162 1.1892 1.25155 1.1635\n", 553 | "\n", 554 | "Upper quartile length of ICU stay, days:\n", 555 | " \n", 556 | "first_careunit CCU CSRU MICU SICU TSICU\n", 557 | "icu_los 4.14855 4.002 4.0958 4.9327 4.5853\n" 558 | ] 559 | } 560 | ], 561 | "source": [ 562 | "print('Median ICU length of stay, days: {}').format(query_output.icu_los.median())\n", 563 | "print('Lower quartile ICU length of stay, days: {}') \\\n", 564 | " .format(query_output.icu_los.quantile(0.25))\n", 565 | "print('Upper quartile ICU length of stay, days: {}\\n') \\\n", 566 | " .format(query_output.icu_los.quantile(0.75))\n", 567 | "\n", 568 | "print('Median length of ICU stay by careunit, days:\\n ')\n", 569 | "print(query_output[['first_careunit','icu_los']] \\\n", 570 | " .groupby('first_careunit').median()).T\n", 571 | "\n", 572 | "print('\\nLower quartile length of ICU stay, days:\\n ')\n", 573 | "print(query_output[['first_careunit','icu_los']] \\\n", 574 | " .groupby('first_careunit').quantile(0.25)).T\n", 575 | "\n", 576 | "print('\\nUpper quartile length of ICU stay, days:\\n ')\n", 577 | "print(query_output[['first_careunit','icu_los']] \\\n", 578 | " .groupby('first_careunit').quantile(0.75)).T\n" 579 | ] 580 | }, 581 | { 582 | "cell_type": "markdown", 583 | "metadata": {}, 584 | "source": [ 585 | "### Hospital length of stay, median days (IQR)" 586 | ] 587 | }, 588 | { 589 | "cell_type": "code", 590 | "execution_count": 16, 591 | "metadata": { 592 | "collapsed": false 593 | }, 594 | "outputs": [ 595 | { 596 | "name": "stdout", 597 | "output_type": "stream", 598 | "text": [ 599 | "Median length of hospital stay, days: 6.9111\n", 600 | "Lower quartile length of hospital stay, days: 4.0264\n", 601 | "Upper quartile length of hospital stay, days: 11.9354\n", 602 | "\n", 603 | "Median length of hospital stay, days:\n", 604 | " \n", 605 | "first_careunit CCU CSRU MICU SICU TSICU\n", 606 | "hosp_los 5.7576 7.37465 6.4229 7.9313 7.4472\n", 607 | "\n", 608 | "Lower quartile length of hospital stay, days:\n", 609 | " \n", 610 | "first_careunit CCU CSRU MICU SICU TSICU\n", 611 | "hosp_los 3.105075 5.2396 3.673775 4.4146 4.07045\n", 612 | "\n", 613 | "Upper quartile length of hospital stay, days:\n", 614 | " \n", 615 | "first_careunit CCU CSRU MICU SICU TSICU\n", 616 | "hosp_los 10.026225 11.351575 11.73025 14.240125 13.58505\n" 617 | ] 618 | } 619 | ], 620 | "source": [ 621 | "# NB: hadm_id is repeated in data due to multiple ICU stays\n", 622 | "# ...so need to drop duplicates\n", 623 | "print('Median length of hospital stay, days: {}') \\\n", 624 | " .format(query_output.drop_duplicates(['hadm_id']).hosp_los.median())\n", 625 | "print('Lower quartile length of hospital stay, days: {}') \\\n", 626 | " .format(query_output.drop_duplicates(['hadm_id']).hosp_los.quantile(0.25))\n", 627 | "print('Upper quartile length of hospital stay, days: {}\\n') \\\n", 628 | " .format(query_output.drop_duplicates(['hadm_id']).hosp_los.quantile(0.75))\n", 629 | "\n", 630 | "print('Median length of hospital stay, days:\\n ')\n", 631 | "print(query_output.drop_duplicates(['hadm_id']) \\\n", 632 | " [['first_careunit','hosp_los']] \\\n", 633 | " .groupby('first_careunit').median()).T\n", 634 | "\n", 635 | "print('\\nLower quartile length of hospital stay, days:\\n ')\n", 636 | "print(query_output.drop_duplicates(['hadm_id']) \\\n", 637 | " [['first_careunit','hosp_los']] \\\n", 638 | " .groupby('first_careunit').quantile(0.25)).T\n", 639 | "\n", 640 | "print('\\nUpper quartile length of hospital stay, days:\\n ')\n", 641 | "print(query_output.drop_duplicates(['hadm_id']) \\\n", 642 | " [['first_careunit','hosp_los']] \\\n", 643 | " .groupby('first_careunit').quantile(0.75)).T" 644 | ] 645 | }, 646 | { 647 | "cell_type": "markdown", 648 | "metadata": { 649 | "collapsed": true 650 | }, 651 | "source": [ 652 | "### ICU mortality, percent of unit stays" 653 | ] 654 | }, 655 | { 656 | "cell_type": "code", 657 | "execution_count": 17, 658 | "metadata": { 659 | "collapsed": false 660 | }, 661 | "outputs": [ 662 | { 663 | "name": "stdout", 664 | "output_type": "stream", 665 | "text": [ 666 | "ICU mortality, number:\n", 667 | "\n", 668 | "icu_expire_flag\n", 669 | "0 48858\n", 670 | "1 4565\n", 671 | "Name: icu_expire_flag, dtype: int64\n", 672 | "\n", 673 | "ICU mortality, %:\n", 674 | "\n", 675 | "icu_expire_flag\n", 676 | "0 91.454991\n", 677 | "1 8.545009\n", 678 | "Name: icu_expire_flag, dtype: float64\n", 679 | "\n", 680 | "ICU mortality by careunit:\n", 681 | "\n", 682 | "first_careunit icu_expire_flag\n", 683 | "CCU 0 7041\n", 684 | " 1 685\n", 685 | "CSRU 0 9501\n", 686 | " 1 353\n", 687 | "MICU 0 18865\n", 688 | " 1 2222\n", 689 | "SICU 0 8078\n", 690 | " 1 813\n", 691 | "TSICU 0 5373\n", 692 | " 1 492\n", 693 | "Name: icu_expire_flag, dtype: int64\n", 694 | "\n", 695 | "Proportion by unit:\n", 696 | "\n", 697 | "first_careunit icu_expire_flag\n", 698 | "CCU 0 91.133834\n", 699 | " 1 8.866166\n", 700 | "CSRU 0 96.417698\n", 701 | " 1 3.582302\n", 702 | "MICU 0 89.462702\n", 703 | " 1 10.537298\n", 704 | "SICU 0 90.855922\n", 705 | " 1 9.144078\n", 706 | "TSICU 0 91.611253\n", 707 | " 1 8.388747\n", 708 | "Name: icu_expire_flag, dtype: float64\n" 709 | ] 710 | } 711 | ], 712 | "source": [ 713 | "print('ICU mortality, number:\\n')\n", 714 | "print(query_output \\\n", 715 | " .groupby(['icu_expire_flag']) \\\n", 716 | " .icu_expire_flag.count())\n", 717 | "\n", 718 | "print('\\nICU mortality, %:\\n')\n", 719 | "print(query_output.groupby(['icu_expire_flag']) \\\n", 720 | " .icu_expire_flag.count() / query_output.icu_expire_flag.count()*100)\n", 721 | "\n", 722 | "print('\\nICU mortality by careunit:\\n')\n", 723 | "print(query_output \\\n", 724 | " .groupby(['first_careunit','icu_expire_flag']) \\\n", 725 | " .icu_expire_flag.count())\n", 726 | "\n", 727 | "print('\\nProportion by unit:\\n')\n", 728 | "print(query_output \\\n", 729 | " .groupby(['first_careunit','icu_expire_flag']) \\\n", 730 | " .icu_expire_flag.count()/query_output \\\n", 731 | " .groupby(['first_careunit']).icu_expire_flag.count())*100" 732 | ] 733 | }, 734 | { 735 | "cell_type": "markdown", 736 | "metadata": {}, 737 | "source": [ 738 | "### Hospital mortality, percent of unit stays" 739 | ] 740 | }, 741 | { 742 | "cell_type": "code", 743 | "execution_count": 18, 744 | "metadata": { 745 | "collapsed": false 746 | }, 747 | "outputs": [ 748 | { 749 | "name": "stdout", 750 | "output_type": "stream", 751 | "text": [ 752 | "Hospital mortality, number:\n", 753 | "\n", 754 | "hospital_expire_flag\n", 755 | "0 44037\n", 756 | "1 5748\n", 757 | "Name: hospital_expire_flag, dtype: int64\n", 758 | "\n", 759 | "Hospital mortality, %:\n", 760 | "\n", 761 | "hospital_expire_flag\n", 762 | "0 88.454354\n", 763 | "1 11.545646\n", 764 | "Name: hospital_expire_flag, dtype: float64\n", 765 | "\n", 766 | "Hospital mortality:\n", 767 | "\n", 768 | "first_careunit hospital_expire_flag\n", 769 | "CCU 0 6441\n", 770 | " 1 817\n", 771 | "CSRU 0 8732\n", 772 | " 1 424\n", 773 | "MICU 0 16911\n", 774 | " 1 2859\n", 775 | "SICU 0 7090\n", 776 | " 1 1020\n", 777 | "TSICU 0 4863\n", 778 | " 1 628\n", 779 | "Name: hospital_expire_flag, dtype: int64\n", 780 | "\n", 781 | "Proportion by unit:\n", 782 | "\n", 783 | "first_careunit hospital_expire_flag\n", 784 | "CCU 0 88.743455\n", 785 | " 1 11.256545\n", 786 | "CSRU 0 95.369157\n", 787 | " 1 4.630843\n", 788 | "MICU 0 85.538695\n", 789 | " 1 14.461305\n", 790 | "SICU 0 87.422935\n", 791 | " 1 12.577065\n", 792 | "TSICU 0 88.563103\n", 793 | " 1 11.436897\n", 794 | "Name: hospital_expire_flag, dtype: float64\n" 795 | ] 796 | } 797 | ], 798 | "source": [ 799 | "# NB: hadm_id is repeated in data due to multiple ICU stays\n", 800 | "# ...so need to drop duplicates\n", 801 | "print('Hospital mortality, number:\\n')\n", 802 | "print(query_output.drop_duplicates(['hadm_id']) \\\n", 803 | " .groupby(['hospital_expire_flag']) \\\n", 804 | " .hospital_expire_flag.count())\n", 805 | "\n", 806 | "print('\\nHospital mortality, %:\\n')\n", 807 | "print(query_output.drop_duplicates(['hadm_id']) \\\n", 808 | " .groupby(['hospital_expire_flag']) \\\n", 809 | " .hospital_expire_flag.count() \\\n", 810 | " / query_output.drop_duplicates(['hadm_id']).hospital_expire_flag.count()*100)\n", 811 | "\n", 812 | "print('\\nHospital mortality:\\n')\n", 813 | "print(query_output.drop_duplicates(['hadm_id']) \\\n", 814 | " .groupby(['first_careunit','hospital_expire_flag']) \\\n", 815 | " .hospital_expire_flag.count())\n", 816 | "\n", 817 | "print('\\nProportion by unit:\\n')\n", 818 | "print(query_output.drop_duplicates(['hadm_id']) \\\n", 819 | " .groupby(['first_careunit','hospital_expire_flag']) \\\n", 820 | " .hospital_expire_flag.count()/query_output.drop_duplicates(['hadm_id']) \\\n", 821 | " .groupby(['first_careunit']).hospital_expire_flag.count())*100" 822 | ] 823 | }, 824 | { 825 | "cell_type": "markdown", 826 | "metadata": {}, 827 | "source": [ 828 | "## Table 3: Distribution of primary ICD-9 codes in MIMIC-II" 829 | ] 830 | }, 831 | { 832 | "cell_type": "code", 833 | "execution_count": 19, 834 | "metadata": { 835 | "collapsed": false 836 | }, 837 | "outputs": [], 838 | "source": [ 839 | "# Connect to MIMIC\n", 840 | "con = psycopg2.connect(dbname=dbname, user=sqluser)\n", 841 | "cur = con.cursor()\n", 842 | "cur.execute('SET search_path to ' + schema_name)\n", 843 | "# cur.close()\n", 844 | "# con.close()" 845 | ] 846 | }, 847 | { 848 | "cell_type": "code", 849 | "execution_count": 20, 850 | "metadata": { 851 | "collapsed": false 852 | }, 853 | "outputs": [ 854 | { 855 | "name": "stdout", 856 | "output_type": "stream", 857 | "text": [ 858 | " subject_id hadm_id icustay_id first_careunit seq_num icd9_code \\\n", 859 | "0 3 145834 211552 MICU 1 0389 \n", 860 | "1 4 185777 294638 MICU 1 042 \n", 861 | "2 6 107064 228232 SICU 1 40391 \n", 862 | "3 9 150750 220597 MICU 1 431 \n", 863 | "4 11 194540 229441 SICU 1 1913 \n", 864 | "\n", 865 | " icd_first3 icd_first3_num icd_first3_grp short_title \n", 866 | "0 038 38 0 Septicemia NOS \n", 867 | "1 042 42 0 Human immuno virus dis \n", 868 | "2 403 403 3 Hyp kid NOS w cr kid V \n", 869 | "3 431 431 3 Intracerebral hemorrhage \n", 870 | "4 191 191 1 Mal neo parietal lobe \n" 871 | ] 872 | } 873 | ], 874 | "source": [ 875 | "# ICD Diagnoses are associated with hospital admissions, not ICU stay\n", 876 | "# ...so select first ICU stay for breakdown.\n", 877 | "# Select patients >= 16 on first admission\n", 878 | "\n", 879 | "query = \\\n", 880 | "\"\"\"\n", 881 | "WITH diagnoses_icu AS (\n", 882 | "SELECT a.subject_id, a.hadm_id, i.icustay_id, \n", 883 | " a.admittime as hosp_admittime, a.dischtime as hosp_dischtime, \n", 884 | " i.first_careunit, \n", 885 | " DENSE_RANK() over(PARTITION BY a.hadm_id ORDER BY i.intime ASC) as icu_seq,\n", 886 | " p.dob, p.dod, i.intime as icu_intime, i.outtime as icu_outtime, \n", 887 | " i.los as icu_los,\n", 888 | " round((EXTRACT(EPOCH FROM (a.dischtime-a.admittime))/60/60/24) :: NUMERIC, 4) as hosp_los, \n", 889 | " p.gender, \n", 890 | " round((EXTRACT(EPOCH FROM (a.admittime-p.dob))/60/60/24/365.242) :: NUMERIC, 4) as age_hosp_in,\n", 891 | " round((EXTRACT(EPOCH FROM (i.intime-p.dob))/60/60/24/365.242) :: NUMERIC, 4) as age_icu_in,\n", 892 | " hospital_expire_flag,\n", 893 | " CASE WHEN p.dod IS NOT NULL \n", 894 | " AND p.dod >= i.intime - interval '6 hour'\n", 895 | " AND p.dod <= i.outtime + interval '6 hour' THEN 1 \n", 896 | " ELSE 0 END AS icu_expire_flag\n", 897 | " FROM admissions a\n", 898 | " INNER JOIN icustays i\n", 899 | " ON a.hadm_id = i.hadm_id\n", 900 | " INNER JOIN patients p\n", 901 | " ON a.subject_id = p.subject_id\n", 902 | " ORDER BY a.subject_id, i.intime)\n", 903 | "SELECT d.subject_id, d.hadm_id, d.icustay_id, d.first_careunit,\n", 904 | " icd.seq_num, icd.icd9_code, left(icd.icd9_code,3) AS icd_first3, \n", 905 | " CASE\n", 906 | " WHEN lower(LEFT(icd.icd9_code,1)) = 'e' THEN NULL\n", 907 | " WHEN lower(LEFT(icd.icd9_code,1)) = 'v' THEN NULL\n", 908 | " ELSE CAST( LEFT(icd.icd9_code,3) AS INT) END AS icd_first3_num,\n", 909 | " CASE \n", 910 | " WHEN lower(LEFT(icd.icd9_code,1)) = 'e' THEN 9\n", 911 | " WHEN lower(LEFT(icd.icd9_code,1)) = 'v' THEN 9\n", 912 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=0 \n", 913 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 139 THEN 0\n", 914 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=140 \n", 915 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 239 THEN 1\n", 916 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=240 \n", 917 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 279 THEN 2\n", 918 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=390 \n", 919 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 459 THEN 3\n", 920 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=460 \n", 921 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 519 THEN 4\n", 922 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=520 \n", 923 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 579 THEN 5\n", 924 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=580 \n", 925 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 629 THEN 6\n", 926 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=800 \n", 927 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 959 THEN 7\n", 928 | " WHEN CAST( LEFT(icd.icd9_code,3) AS INT) >=960 \n", 929 | " AND CAST( LEFT(icd.icd9_code,3) AS INT) <= 989 THEN 8\n", 930 | " ELSE 9 END AS icd_first3_grp, \n", 931 | " d_icd.short_title\n", 932 | "FROM diagnoses_icu d\n", 933 | "INNER JOIN diagnoses_icd icd\n", 934 | " ON d.hadm_id = icd.hadm_id\n", 935 | "INNER JOIN d_icd_diagnoses d_icd\n", 936 | " ON icd.icd9_code = d_icd.icd9_code\n", 937 | "WHERE seq_num =1\n", 938 | " AND age_hosp_in >=16;\n", 939 | "\"\"\"\n", 940 | "\n", 941 | "query_output = pd.read_sql_query(query,con)\n", 942 | "print(query_output.head())" 943 | ] 944 | }, 945 | { 946 | "cell_type": "markdown", 947 | "metadata": {}, 948 | "source": [ 949 | "### Most common ICD-9 codes" 950 | ] 951 | }, 952 | { 953 | "cell_type": "code", 954 | "execution_count": 21, 955 | "metadata": { 956 | "collapsed": false 957 | }, 958 | "outputs": [ 959 | { 960 | "name": "stdout", 961 | "output_type": "stream", 962 | "text": [ 963 | "Primary ICD diagnoses by frequency:\n", 964 | "\n", 965 | "41401 3496\n", 966 | "0389 2069\n", 967 | "41071 1751\n", 968 | "4241 1140\n", 969 | "51881 1127\n", 970 | "dtype: int64\n", 971 | "\n", 972 | "Primary ICD diagnoses, %:\n", 973 | "\n", 974 | "41401 7.122629\n", 975 | "0389 4.215309\n", 976 | "41071 3.567427\n", 977 | "4241 2.322596\n", 978 | "51881 2.296111\n", 979 | "dtype: float64\n" 980 | ] 981 | } 982 | ], 983 | "source": [ 984 | "print('Primary ICD diagnoses by frequency:\\n')\n", 985 | "print(query_output.drop_duplicates(['hadm_id'])['icd9_code'].value_counts().head())\n", 986 | "\n", 987 | "print('\\nPrimary ICD diagnoses, %:\\n')\n", 988 | "print(query_output.drop_duplicates(['hadm_id'])['icd9_code'].value_counts().head() \\\n", 989 | " /len(query_output.drop_duplicates(['hadm_id'])['icd9_code'])*100)" 990 | ] 991 | }, 992 | { 993 | "cell_type": "markdown", 994 | "metadata": {}, 995 | "source": [ 996 | "### ICD-9 codes by careunit" 997 | ] 998 | }, 999 | { 1000 | "cell_type": "code", 1001 | "execution_count": 22, 1002 | "metadata": { 1003 | "collapsed": false 1004 | }, 1005 | "outputs": [ 1006 | { 1007 | "name": "stdout", 1008 | "output_type": "stream", 1009 | "text": [ 1010 | "Primary ICD diagnoses by ICU stay:\n", 1011 | "\n", 1012 | " CCU CSRU MICU SICU TSICU Total\n", 1013 | "0 305 72 3229 448 152 4206\n", 1014 | "1 126 287 1415 1225 466 3519\n", 1015 | "2 104 36 985 178 54 1357\n", 1016 | "3 5131 7138 2638 2356 684 17947\n", 1017 | "4 416 141 3393 390 225 4565\n", 1018 | "5 264 157 3046 1193 440 5100\n", 1019 | "6 130 14 738 101 31 1014\n", 1020 | "7 97 494 480 836 2809 4716\n", 1021 | "8 50 2 584 58 11 705\n", 1022 | "9 565 739 2883 1204 563 5954\n", 1023 | "10 7188 9080 19391 7989 5435 49083\n", 1024 | "\n", 1025 | "Proportion by careunit:\n", 1026 | "\n", 1027 | " CCU CSRU MICU SICU TSICU Total\n", 1028 | "0 4.243183 0.792952 16.652055 5.607711 2.796688 8.569158\n", 1029 | "1 1.752922 3.160793 7.297200 15.333584 8.574057 7.169488\n", 1030 | "2 1.446856 0.396476 5.079676 2.228064 0.993560 2.764705\n", 1031 | "3 71.382860 78.612335 13.604249 29.490550 12.585097 36.564595\n", 1032 | "4 5.787423 1.552863 17.497808 4.881712 4.139834 9.300572\n", 1033 | "5 3.672788 1.729075 15.708318 14.933033 8.095676 10.390563\n", 1034 | "6 1.808570 0.154185 3.805889 1.264238 0.570377 2.065888\n", 1035 | "7 1.349471 5.440529 2.475375 10.464389 51.683533 9.608215\n", 1036 | "8 0.695604 0.022026 3.011706 0.725998 0.202392 1.436343\n", 1037 | "9 7.860323 8.138767 14.867722 15.070722 10.358786 12.130473\n", 1038 | "10 14.644582 18.499277 39.506550 16.276511 11.073080 100.000000\n" 1039 | ] 1040 | } 1041 | ], 1042 | "source": [ 1043 | "print('Primary ICD diagnoses by ICU stay:\\n')\n", 1044 | "a=query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='CCU']['icd_first3_grp'].value_counts()\n", 1045 | "b=query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='CSRU']['icd_first3_grp'].value_counts()\n", 1046 | "c=query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='MICU']['icd_first3_grp'].value_counts()\n", 1047 | "d=query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='SICU']['icd_first3_grp'].value_counts()\n", 1048 | "e=query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='TSICU']['icd_first3_grp'].value_counts()\n", 1049 | "f=query_output.drop_duplicates(['hadm_id'])['icd_first3_grp'].value_counts()\n", 1050 | "df_num=pd.concat([a,b,c,d,e,f],axis=1)\n", 1051 | "df_num.fillna(value=0, inplace=True)\n", 1052 | "df_num.columns = ['CCU', 'CSRU','MICU','SICU','TSICU','Total']\n", 1053 | "# Append a totals row\n", 1054 | "print(df_num.append(df_num.sum(), ignore_index=True))\n", 1055 | "\n", 1056 | "print('\\nProportion by careunit:\\n')\n", 1057 | "a=(a/query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='CCU']['icd_first3_grp'].count())*100\n", 1058 | "b=(b/query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='CSRU']['icd_first3_grp'].count())*100\n", 1059 | "c=(c/query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='MICU']['icd_first3_grp'].count())*100\n", 1060 | "d=(d/query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='SICU']['icd_first3_grp'].count())*100\n", 1061 | "e=(e/query_output.drop_duplicates(['hadm_id']).loc[query_output.first_careunit=='TSICU']['icd_first3_grp'].count())*100\n", 1062 | "f=(f/query_output.drop_duplicates(['hadm_id'])['icd_first3_grp'].count())*100\n", 1063 | "df_percent=pd.concat([a,b,c,d,e,f],axis=1)\n", 1064 | "df_percent.fillna(value=0, inplace=True)\n", 1065 | "df_percent.columns = ['CCU', 'CSRU','MICU','SICU','TSICU','Total']\n", 1066 | "# Append a totals row\n", 1067 | "print(df_percent.append( df_num.sum() * 100 / df_num.Total.sum(), ignore_index=True))" 1068 | ] 1069 | }, 1070 | { 1071 | "cell_type": "markdown", 1072 | "metadata": {}, 1073 | "source": [ 1074 | "### Distribution of ICD codes, normalised by careunit" 1075 | ] 1076 | }, 1077 | { 1078 | "cell_type": "code", 1079 | "execution_count": 23, 1080 | "metadata": { 1081 | "collapsed": false 1082 | }, 1083 | "outputs": [ 1084 | { 1085 | "data": { 1086 | "image/png": "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\nfEhx7q6huCXAzMw6mBPH+qrvcaz1g7t8j9bPgT3zct4hFD8kiYhxFPd7jQKeBH4dERMi4lngV8Cw\nvJT4H1Xt1uqj1j4i4hFgEDBS0kTgdmA1SV2AzYA36sReq487gLVyHN+lSH6IiNeBESoelrmoRlzl\nNicAc1Q84HF6Vd3+FPcQTgDOB46pM85K2YMUK4/PAhcAI6vqsIjjnLev3vzVGPPvgR2zzlHM/3Tv\nFOC7GecawDWZ2BwH3J7HfARcWyNGMo5674nNgLdrHHI1cEzW3RJ4t7RvgRXPjOdE4P58kOTVWvVY\n8N7Deu+/mv3UOyYi/gbcRvEw1a0Ul6Rrqdf//wBn5wM0lV9oBlGsaNb/9djMzNqNat9KZ8uCfNji\nuIg4q83KS7FlfZySbgZOz0TWSiSdBaweEefV2R/zPzO0PHun2QF0Ip9rdgCdiD/dqkWttYfl1ZlE\nRM2rR04czWypJOlOilsp9qk8UFSjjhPHeZw4tnDi2MKJYwsnji3qJ45+OMbMlkoRUfNzKM3MrOP4\nHkczMzMza4gTRzMzMzNriBNHMzMzM2uIE0czMzMza4gTRzMzMzNriD+Ox8yWWcXH8Vzd7DA6iXXb\nrrLc2K3ZAXQen/P7Yp5HZ7ddZ7mxUt2P4/GKo5mZmZk1xImjmZmZmTXEiaOZmZmZNcSJo5mZmZk1\nxImjmZmZmTWkzcRR0lxJl5RenyXpvPYMQlIPSZPas832IukwSc9KeqyNejdK+mpu/1rSp9sxho0l\nfb30uo+ky9ur/WWNpHfrlI9o4NjTJXVbhD6PkfTJ0utpktZa2HYWlaSfS9p3SfXXLNXzbGZmS1Yj\nK46zgEMkrZ2vl7fP7/kW8O2IaOuHcuQXEXFCRDzXjjFsAnxjXkcRYyLitHZsvy5JKyyJftpZzfdo\nRDTyGRynAavU2iGptX8vxwLrV8VQ86MM2rIocx4R50VEq7/cdHQMS8ixzD/PZma2BDWSOM4GrgPO\nqN4haR1Jf5A0Kr92zfK1JN0laYKkkZK2zfL+km6W9GdJz0v6do02e0h6XNKY/Nolyz+Z5eMkTZK0\nW5a/K2mApMmSHpG0s6Rhkl6UdFDW2UbSU3nsBEk9a/T7dUkTs+0Ls+zfKD7w6wZJA2occ5Wkv0h6\nBPhEqXyopD65/S1JU7L/X0u6so252yvjHJfjXw24ENgjy06X1E/SvSpMlbRGqe//zbZrtl8V/8qS\n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\nAAAAAElFTkSuQmCC\n", 1087 | "text/plain": [ 1088 | "" 1089 | ] 1090 | }, 1091 | "metadata": {}, 1092 | "output_type": "display_data" 1093 | } 1094 | ], 1095 | "source": [ 1096 | "data = df_percent[['CCU', 'CSRU','MICU','SICU','TSICU']].values\n", 1097 | "row_labels = list(['CCU', 'CSRU','MICU','SICU','TSICU'])\n", 1098 | "column_labels = list(\n", 1099 | " ['Infectious and parasitic diseases',\n", 1100 | " 'Neoplasms of digestive organs and intrathoracic organs, etc',\n", 1101 | " 'Endocrine, nutritional, metabolic, and immunity',\n", 1102 | " 'Diseases of the circulatory system',\n", 1103 | " 'Pulmonary diseases',\n", 1104 | " 'Diseases of the digestive system',\n", 1105 | " 'Diseases of the genitourinary system',\n", 1106 | " 'Trauma',\n", 1107 | " 'Poisoning by drugs and biological substances',\n", 1108 | " 'Other'])\n", 1109 | "fig, ax = plt.subplots()\n", 1110 | "heatmap = ax.pcolor(data, cmap=plt.cm.jet)\n", 1111 | "\n", 1112 | "# move labels to top\n", 1113 | "ax.xaxis.tick_top()\n", 1114 | "\n", 1115 | "# put the major ticks at the middle of each cell\n", 1116 | "ax.set_xticks(np.arange(data.shape[1])+0.5, minor=False)\n", 1117 | "ax.set_yticks(np.arange(data.shape[0])+0.5, minor=False)\n", 1118 | "\n", 1119 | "ax.set_xticklabels(row_labels, minor=False)\n", 1120 | "ax.set_yticklabels(column_labels, minor=False)\n", 1121 | "plt.show()" 1122 | ] 1123 | }, 1124 | { 1125 | "cell_type": "code", 1126 | "execution_count": 24, 1127 | "metadata": { 1128 | "collapsed": false 1129 | }, 1130 | "outputs": [ 1131 | { 1132 | "name": "stdout", 1133 | "output_type": "stream", 1134 | "text": [ 1135 | " CCU CSRU MICU SICU TSICU Total\n", 1136 | "0 305 72 3229 448 152 4206\n", 1137 | "1 126 287 1415 1225 466 3519\n", 1138 | "2 104 36 985 178 54 1357\n", 1139 | "3 5131 7138 2638 2356 684 17947\n", 1140 | "4 416 141 3393 390 225 4565\n", 1141 | "5 264 157 3046 1193 440 5100\n", 1142 | "6 130 14 738 101 31 1014\n", 1143 | "7 97 494 480 836 2809 4716\n", 1144 | "8 50 2 584 58 11 705\n", 1145 | "9 565 739 2883 1204 563 5954\n" 1146 | ] 1147 | } 1148 | ], 1149 | "source": [ 1150 | "print df_num" 1151 | ] 1152 | }, 1153 | { 1154 | "cell_type": "code", 1155 | "execution_count": 25, 1156 | "metadata": { 1157 | "collapsed": false 1158 | }, 1159 | "outputs": [ 1160 | { 1161 | "data": { 1162 | "text/plain": [ 1163 | "" 1164 | ] 1165 | }, 1166 | "execution_count": 25, 1167 | "metadata": {}, 1168 | "output_type": "execute_result" 1169 | }, 1170 | { 1171 | "data": { 1172 | "image/png": "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\nPTUVpVTSCAyEJxqlrKOju7XfGIlQmp3drfjnZ2QM6cGLaRobPB7WORy80dbGBVYrKwoK+Jf8fHJH\nSrG2t/dtHKqrIRCAW2+FJ5+EGTMIx8Kc98x5fNZYxqY35rJhQ+9OhIjw6+ZmHq+t5bvTp/OZCRNG\nT9GMEiLCC62tPHzkCJ+dMIH/nDYNU49eQdmuZq59dT6V/3qU+cW2syZXfSjUrfTfd7uxGQwst9u5\n3m7nWpsN2yDuh4ZQiJdaW3mxtZWgpnF3YSErCwsH39scCvG43ntcswZefhmWLiUcbuTYse9QXPxD\nUlMtpz2EiFD/3Xqaf9PMoncXYSk+/T7jjWBdkL3L91K4spCp/zl1wOehru6buN3rWbToPVJSDIgI\nFRXXUlBwB5MmfR5E4Omn4Xvfg9Wr4aMfHTE5XdEoa1tbWdPSgjMa5b6iIj5dVMR0S+9rnjQCJ+GP\nx9nc0cF6t5v3PR4OBgJcnpXV7eK50GrF0IdbYTiE4nHedrlY53DwF5eLq202VhQUcEtuLtYRbgkA\n+g0XCEBGRveq3+79Lb/e8QL7H32XDRtgwYITm7ujUT57+DCHAwFenjePkh77/T3SHA7zhepqDgUC\nrJk7l0uzsrq/W7jqLqRxMZXPffm0nrTh0hGLsSGh9N9zu3HFYlyfUPrX2+1MNZuHfWwRYbfPx4st\nLaxzOJhuNnNPURGfKigYucZFF2+9BfffD488Al/60uldjz1kPPL/juB+1835fzkf08Rh9oIHQUTT\nuntOo0G4JczeG/diu9bGzB/NRKX0fQ1E4nz44Y1kZ1/B9OnfxOl8g7q6r7N48R5SvH647z5oaIBX\nXoFp085YrrgI77vdrG5u5h2Xi4/k5nJ/URHL7HZS+/mdznkjENE0tnV2drt3dnm9XJiZyTKbjevs\ndi7NyurVahwtOmMx/retjXUOB5s7Ovin3FxWFBRwU07OqN7Ml/36MjIrHmeB8RaefvrE+s0dHdx1\n4AAfz8vjezNmjL7f+SwhIrzidPJgTQ13FhTwrenTSU9NZVPtNq77+Qp+e2k1t39yZP7XiKaxtbOz\nu7W/z+/n8qys7tb+IquVlFGwODFN4123mxdbW/lzezvX2mysLCri5tzckbuX6+rgk5/UFdfq1dDD\noPaFFtM4/G+HCRwKsPCthRjtI2uYnJEIGzs6KPN4KPN42O/3M8Ni6X6Or7HZyE9LG9FzRt1RKm+u\n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\n", 1173 | "text/plain": [ 1174 | "" 1175 | ] 1176 | }, 1177 | "metadata": {}, 1178 | "output_type": "display_data" 1179 | } 1180 | ], 1181 | "source": [ 1182 | "df_num.plot()" 1183 | ] 1184 | } 1185 | ], 1186 | "metadata": { 1187 | "kernelspec": { 1188 | "display_name": "Python 2", 1189 | "language": "python", 1190 | "name": "python2" 1191 | }, 1192 | "language_info": { 1193 | "codemirror_mode": { 1194 | "name": "ipython", 1195 | "version": 2 1196 | }, 1197 | "file_extension": ".py", 1198 | "mimetype": "text/x-python", 1199 | "name": "python", 1200 | "nbconvert_exporter": "python", 1201 | "pygments_lexer": "ipython2", 1202 | "version": "2.7.11" 1203 | } 1204 | }, 1205 | "nbformat": 4, 1206 | "nbformat_minor": 0 1207 | } 1208 | --------------------------------------------------------------------------------