Baselight

MIT-BIH Arrhythmia Database (Simple CSVs)

Electrocardiograms (ECG/EKG) from 47 patients at Beth Israel hospital (1975-79)

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023

Loading...
Loading...

About this Dataset

MIT-BIH Arrhythmia Database (Simple CSVs)

A beginner-friendly version of the MIT-BIH Arrhythmia Database, which contains 48 electrocardiograms (EKGs) from 47 patients that were at Beth Israel Deaconess Medical Center in Boston, MA in 1975-1979.

There are 48 CSVs, each of which is a 30-minute echocardiogram (EKG) from a single patient (record 201 and 202 are from the same patient). Data was collected at 360 Hz, meaning that 360 data points is equal to 1 second of time.

Banner photo by Joshua Chehov on Unsplash.

How to Analyze the Heart with Python

  1. How to Analyze Heartbeats in 15 Minutes with Python
  2. How the Heart Works (and What is a "QRS" Complex?)
  3. How to Identify and Label the Waves of an EKG
  4. How to Flatten a Wandering EKG
  5. How to Calculate the Heart Rate

What is a 12-lead EKG?

EKGs, or electrocardiograms, measure the heart's function by looking at its electrical activity. The electrical activity in each part of the heart is supposed to happen in a particular order and intensity, creating that classic "heartbeat" line (or "QRS complex") you see on monitors in medical TV shows.

There are a few types of EKGs (4-lead, 5-lead, 12-lead, etc.), which give us varying detail about the heart. A 12-lead is one of the most detailed types of EKGs, as it allows us to get 12 different outputs or graphs, all looking at different, specific parts of the heart muscles.

This dataset only publishes two leads from each patient's 12-lead EKG, since that is all that the original MIT-BIH database provided.

What does each part of the QRS complex mean?

Check out Ninja Nerd's EKG Basics tutorial on YouTube to understand what each part of the QRS complex (or heartbeat) means from an electrical standpoint.

Filenames

Each file's name is the ID of the patient (except for 201 and 202, which are the same person).

Columns

  • index
  • calculated elapsed milliseconds (index / 360 * 1000)
  • the first lead
  • the second lead

The two leads are often lead MLII and another lead such as V1, V2, or V5, though some datasets do not use MLII at all. MLII is the lead most often associated with the classic QRS Complex (the medical name for a single heartbeat).

Milliseconds were calculated and added as a secondary index to each dataset. Calculations were made by dividing the index by 360 Hz then multiplying by 1000. The original index was preserved, since the calculation of milliseconds as digital signals processing (e.g. filtering) occurs may cause issues with the correlation and merging of data. You are encouraged to try whichever index is most suitable for your analysis and/or recalculate a time index with Pandas' to_timedelta().

Patient information

Info about each of the 47 patients is available here, including age, gender, medications, diagnoses, etc.

Getting Started

Physionet has some online tutorials and tips for analyzing EKGs and other time series / digital signals.

Check out our notebook for opening and visualizing the data.

How the CSVs were obtained

A write-up on how the data was converted from .dat to .csv files is available on Medium.com. Data was downloaded from the MIT-BIH Arrhythmia Database then converted to CSV.

Citations

Moody GB, Mark RG. The impact of the MIT-BIH Arrhythmia Database. IEEE Eng in Med and Biol 20(3):45-50 (May-June 2001). (PMID: 11446209)

Goldberger, A., Amaral, L., Glass, L., Hausdorff, J., Ivanov, P. C., Mark, R., ... & Stanley, H. E. (2000). PhysioBank, PhysioToolkit, and PhysioNet: Components of a new research resource for complex physiologic signals. Circulation [Online]. 101 (23), pp. e215–e220.

Tables

N 100

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_100
  • 7.15 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_100 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v5" DOUBLE
);

N 101

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_101
  • 7.07 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_101 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 102

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_102
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_102 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "v5" DOUBLE,
  "v2" DOUBLE
);

N 103

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_103
  • 7.38 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_103 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v2" DOUBLE
);

N 104

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_104
  • 7.3 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_104 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "v5" DOUBLE,
  "v2" DOUBLE
);

N 105

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_105
  • 7.38 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_105 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 106

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_106
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_106 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 107

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_107
  • 7.47 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_107 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 108

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_108
  • 7.47 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_108 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 109

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_109
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_109 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 111

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_111
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_111 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 112

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_112
  • 7.23 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_112 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 113

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_113
  • 7.23 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_113 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 114

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_114
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_114 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "v5" DOUBLE,
  "mlii" DOUBLE
);

N 115

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_115
  • 7.35 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_115 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 116

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_116
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_116 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 117

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_117
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_117 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v2" DOUBLE
);

N 118

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_118
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_118 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 119

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_119
  • 7.47 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_119 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 121

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_121
  • 7.38 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_121 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 122

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_122
  • 7.23 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_122 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 123

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_123
  • 7.23 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_123 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v5" DOUBLE
);

N 124

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_124
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_124 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v4" DOUBLE
);

N 200

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_200
  • 7.38 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_200 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 201

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_201
  • 7.21 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_201 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 202

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_202
  • 7.29 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_202 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 203

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_203
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_203 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 205

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_205
  • 7.16 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_205 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 207

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_207
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_207 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 208

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_208
  • 7.47 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_208 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 209

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_209
  • 7.23 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_209 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 210

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_210
  • 7.28 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_210 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 212

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_212
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_212 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 213

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_213
  • 7.47 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_213 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 214

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_214
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_214 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 215

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_215
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_215 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 217

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_217
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_217 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 219

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_219
  • 7.31 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_219 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 220

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_220
  • 7.21 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_220 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 221

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_221
  • 7.3 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_221 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 222

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_222
  • 7.23 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_222 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 223

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_223
  • 7.38 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_223 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 228

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_228
  • 7.39 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_228 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 230

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_230
  • 7.3 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_230 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 231

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_231
  • 7.28 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_231 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 232

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_232
  • 7.15 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_232 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 233

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_233
  • 7.47 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_233 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

N 234

@kaggle.protobioengineering_mit_bih_arrhythmia_database_modern_2023.n_234
  • 7.23 MB
  • 650000 rows
  • 4 columns
Loading...

CREATE TABLE n_234 (
  "unnamed_0" BIGINT,
  "time_ms" DOUBLE,
  "mlii" DOUBLE,
  "v1" DOUBLE
);

Share link

Anyone who has the link will be able to view this.