Heart disease continues to be the leading cause of death for individuals in the middle adult age range despite decades of research addressing treatment for this condition. The Center for Disease Control (CDC, 2024) describes heart disease as a term encompassing several conditions related to heart function, including coronary artery disease which affects blood flow to the heart and may increase the risk of a heart attack. According to the CDC, 22% of deaths in the United States are due to heart disease (CDC, 2024). Due to the high need for advanced healthcare practices to treat this condition, data science has surfaced as a option using machine learning models to aid understanding of the disease for advancements in treatment.
Data which lacks quality and integrity due to omitted values, missing values, inaccurate column labeling, bias, and outliers risks inaccurate conclusions and inappropriate or potentially harmful action steps based on findings. In healthcare, research findings hold value only when resulting in beneficial actions steps. Maintaining the quality of data prior to statistical analysis is imperative, for which completion of an EDA is required.
The purpose of this notebook is to investigate missingness present in the Cleveland Heart dataset used for this EDA and discuss optimal choices for managing missing values.
The Amelia-II package was installed and required specification of the CRAN mirror.
install.packages("Amelia", repos = "https://cloud.r-project.org")
## Installing package into 'C:/Users/benke/AppData/Local/R/win-library/4.5'
## (as 'lib' is unspecified)
## package 'Amelia' successfully unpacked and MD5 sums checked
## Warning: cannot remove prior installation of package 'Amelia'
## Warning in file.copy(savedcopy, lib, recursive = TRUE): problem copying
## C:\Users\benke\AppData\Local\R\win-library\4.5\00LOCK\Amelia\libs\x64\Amelia.dll
## to C:\Users\benke\AppData\Local\R\win-library\4.5\Amelia\libs\x64\Amelia.dll:
## Permission denied
## Warning: restored 'Amelia'
##
## The downloaded binary packages are in
## C:\Users\benke\AppData\Local\Temp\RtmpIlgGB6\downloaded_packages
All previous packages from Part 1 were included.
library(ggplot2) # Load ggplot2 library
library(scales) # Load scales library
library(moments)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(readr)
## Warning: package 'readr' was built under R version 4.5.1
##
## Attaching package: 'readr'
## The following object is masked from 'package:scales':
##
## col_factor
library(kableExtra)
## Warning: package 'kableExtra' was built under R version 4.5.1
##
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
##
## group_rows
The Cleveland Heart dataset was uploaded for analysis.
getwd()
## [1] "C:/Users/benke/OneDrive/NU/DDS 8501"
setwd("C:/Users/benke/OneDrive/NU/DDS 8501")
myheartdata <- read_csv("heart_cleveland_upload.csv")
## Rows: 297 Columns: 14
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## dbl (14): age, sex, cp, trestbps, chol, fbs, restecg, thalach, exang, oldpea...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
Information regarding the variables was included in this EDA for reference and clarity.
The Characteristics of The Dataset
This dataset is comprised of the data from the heart_cleveland_upload dataset, which has 14 variables and 297 observations
The variables consist of 13 attributes and a target variable indicating the presence or absence of heart disease. A description of the variables are as follows:
age: patient’s age (Quantitative, Numeric, Continuous, Ratio)
sex: patient’s gender (Qualitative, Categorical, Nominal)
cp: chest pain: This variable includes 4 categories of chest pain (typical angina = 0, atypical angina = 1, non-anginal pain = 2, asympotamic = 3, Qualitative, Categorical, Nominal)
trestbps: patient’s blood pressure at rest (mm/HG, Quantitative, Numeric, Continuous, Ratio)
chol: serum cholesterol (mg/dl, Quantitative, Numeric, Continuous, Ratio)
fbs: fasting blood sugar > 120 mg/dl (Qualitative, Categorical, Nominal)
restecg: electrocardiogram results at rest categorized in 3 values (Normal = 0, ST-T wave abnormality(T wave inversions and/or ST elevation or depression of > 0.05 mV = 1, probable/definite left ventricular hypertrophy = 2, Qualitative, Categorical, Nominal)
thalach: patient’s maximum heart rate (Quantitative, Numeric, Continuous, Interval)
exang: presence/absence of exercise induced angina (Qualitative, Categorical, Nominal)
oldpeak: exercise induced ST-depression compared to rest state (Quantitative, Numeric, Continuous, Interval)
slope: shape of slope of ST segment during peak exercise (Qualitative, Categorical (up, flat, or down, Nominal)
ca: patient’s number of major blood vessles (Qualitative, Categorical, Nominal)
thal: patient’s thalassemia indicating type of defect (Qualitative, Categorical, Normal = 1, Fixed defect = 2, Reversible defect = 3, Nominal)
condition: target: presence or absence of heart disease (Binary, Numerical, Discrete)
Preprocessing code was included in this notebook for reference. In Part 1 of this EDA, categorical variables with numeric values were reclassified to factors.
factor_columns <- c("sex", "cp", "fbs", "restecg",
"exang","slope", "ca", "thal")
myheartdata[factor_columns] <- lapply(myheartdata[factor_columns], function(col) as.factor(as.character(col)))
Another important preprocessing step is identification of missing values and the percent of “NA” values in this dataset. This dataset does not include “NA” values which require preprocessing.
cols_with_nas <- sum(colSums(is.na(myheartdata)) > 0)
Percent_col_NA <- percent(cols_with_nas / length(myheartdata))
cols_with_nas
## [1] 0
Percent_col_NA
## [1] "0%"
The summary obtained from Part 1 was maintained. This includes counts for categorical data. Only numeric variables have mean and median scores.
summary(myheartdata)
## age sex cp trestbps chol fbs
## Min. :29.00 0: 96 0: 23 Min. : 94.0 Min. :126.0 0:254
## 1st Qu.:48.00 1:201 1: 49 1st Qu.:120.0 1st Qu.:211.0 1: 43
## Median :56.00 2: 83 Median :130.0 Median :243.0
## Mean :54.54 3:142 Mean :131.7 Mean :247.4
## 3rd Qu.:61.00 3rd Qu.:140.0 3rd Qu.:276.0
## Max. :77.00 Max. :200.0 Max. :564.0
## restecg thalach exang oldpeak slope ca thal
## 0:147 Min. : 71.0 0:200 Min. :0.000 0:139 0:174 0:164
## 1: 4 1st Qu.:133.0 1: 97 1st Qu.:0.000 1:137 1: 65 1: 18
## 2:146 Median :153.0 Median :0.800 2: 21 2: 38 2:115
## Mean :149.6 Mean :1.056 3: 20
## 3rd Qu.:166.0 3rd Qu.:1.600
## Max. :202.0 Max. :6.200
## condition
## Min. :0.0000
## 1st Qu.:0.0000
## Median :0.0000
## Mean :0.4613
## 3rd Qu.:1.0000
## Max. :1.0000
Additionally, use of the str() function reveals the categories have been appropriately reclassified as factors.
str(myheartdata)
## spc_tbl_ [297 × 14] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
## $ age : num [1:297] 69 69 66 65 64 64 63 61 60 59 ...
## $ sex : Factor w/ 2 levels "0","1": 2 1 1 2 2 2 2 2 1 2 ...
## $ cp : Factor w/ 4 levels "0","1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
## $ trestbps : num [1:297] 160 140 150 138 110 170 145 134 150 178 ...
## $ chol : num [1:297] 234 239 226 282 211 227 233 234 240 270 ...
## $ fbs : Factor w/ 2 levels "0","1": 2 1 1 2 1 1 2 1 1 1 ...
## $ restecg : Factor w/ 3 levels "0","1","2": 3 1 1 3 3 3 3 1 1 3 ...
## $ thalach : num [1:297] 131 151 114 174 144 155 150 145 171 145 ...
## $ exang : Factor w/ 2 levels "0","1": 1 1 1 1 2 1 1 1 1 1 ...
## $ oldpeak : num [1:297] 0.1 1.8 2.6 1.4 1.8 0.6 2.3 2.6 0.9 4.2 ...
## $ slope : Factor w/ 3 levels "0","1","2": 2 1 3 2 2 2 3 2 1 3 ...
## $ ca : Factor w/ 4 levels "0","1","2","3": 2 3 1 2 1 1 1 3 1 1 ...
## $ thal : Factor w/ 3 levels "0","1","2": 1 1 1 1 1 3 2 1 1 3 ...
## $ condition: num [1:297] 0 0 0 1 0 0 0 1 0 0 ...
## - attr(*, "spec")=
## .. cols(
## .. age = col_double(),
## .. sex = col_double(),
## .. cp = col_double(),
## .. trestbps = col_double(),
## .. chol = col_double(),
## .. fbs = col_double(),
## .. restecg = col_double(),
## .. thalach = col_double(),
## .. exang = col_double(),
## .. oldpeak = col_double(),
## .. slope = col_double(),
## .. ca = col_double(),
## .. thal = col_double(),
## .. condition = col_double()
## .. )
## - attr(*, "problems")=<externalptr>
Amelia-II package was installed with the CRAN mirror specified and loaded.
Missingness was initially investigated in this EDA using the missingness map method in the Amelia II package in R to identify any missing values. Inspection of the missingness map reveals no missing values for this dataset.
myheartdata.missmap <- missmap(myheartdata)
## Warning: Unknown or uninitialised column: `arguments`.
## Unknown or uninitialised column: `arguments`.
## Warning: Unknown or uninitialised column: `imputations`.
myheartdata.missmap
## NULL
To further ensure the absence of missing values, data inspection was completed using the logical function is.na(), revealing 100% FALSE returns indicating the absence of missing values in this data set.
is.na(myheartdata)
## age sex cp trestbps chol fbs restecg thalach exang oldpeak
## [1,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [3,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [4,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [5,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [6,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [7,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [8,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [9,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [10,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [11,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [13,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [14,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [15,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [16,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [17,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [18,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [19,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [20,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [21,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [22,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [23,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [24,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [25,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [26,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [27,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [28,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [29,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [30,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [31,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [32,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [33,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [34,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [35,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [36,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [37,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [38,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [39,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [40,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [41,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [42,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [43,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [44,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [45,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [46,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [47,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [48,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [49,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [50,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [51,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [52,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [53,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [54,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [55,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [56,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [57,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [58,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [59,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [60,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [61,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [62,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [63,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [64,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [65,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [66,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [67,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [68,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [69,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [70,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [71,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [72,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [73,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [74,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [75,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [76,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [77,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [78,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [79,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [80,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [81,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [82,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [83,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [84,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [85,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [86,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [87,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [88,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [89,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [90,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [91,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [92,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [93,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [94,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [95,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [96,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [97,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [98,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [99,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [100,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [101,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [102,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [103,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [104,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [105,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [106,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [107,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [108,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [109,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [110,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [111,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [112,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [113,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [114,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [115,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [116,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [117,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [118,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [119,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [120,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [121,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [122,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [123,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [124,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [125,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [126,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [127,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [128,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [129,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [130,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [131,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [132,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [133,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [134,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [135,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [136,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [137,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [138,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [139,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [140,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [141,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [142,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [143,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [144,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [145,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [146,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [147,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [148,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [149,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [150,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [151,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [152,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [153,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [154,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [155,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [156,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [157,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [158,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [159,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [160,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [161,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [162,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [163,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [164,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [165,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [166,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [167,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [168,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [169,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [170,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [171,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [172,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [173,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [174,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [175,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [176,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [177,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [178,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [179,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [180,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [181,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [182,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [183,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [184,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [185,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [186,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [187,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [188,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [189,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [190,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [191,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [192,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [193,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [194,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [195,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [196,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [197,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [198,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [199,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [200,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [201,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [202,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [203,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [204,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [205,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [206,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [207,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [208,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [209,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [210,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [211,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [212,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [213,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [214,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [215,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [216,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [217,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [218,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [219,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [220,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [221,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [222,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [223,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [224,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [225,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [226,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [227,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [228,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [229,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [230,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [231,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [232,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [233,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [234,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [235,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [236,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [237,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [238,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [239,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [240,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [241,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [242,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [243,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [244,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [245,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [246,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [247,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [248,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [249,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [250,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [251,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [252,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [253,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [254,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [255,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [256,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [257,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [258,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [259,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [260,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [261,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [262,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [263,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [264,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [265,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [266,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [267,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [268,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [269,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [270,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [271,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [272,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [273,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [274,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [275,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [276,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [277,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [278,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [279,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [280,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [281,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [282,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [283,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [284,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [285,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [286,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [287,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [288,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [289,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [290,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [291,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [292,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [293,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [294,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [295,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [296,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [297,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## slope ca thal condition
## [1,] FALSE FALSE FALSE FALSE
## [2,] FALSE FALSE FALSE FALSE
## [3,] FALSE FALSE FALSE FALSE
## [4,] FALSE FALSE FALSE FALSE
## [5,] FALSE FALSE FALSE FALSE
## [6,] FALSE FALSE FALSE FALSE
## [7,] FALSE FALSE FALSE FALSE
## [8,] FALSE FALSE FALSE FALSE
## [9,] FALSE FALSE FALSE FALSE
## [10,] FALSE FALSE FALSE FALSE
## [11,] FALSE FALSE FALSE FALSE
## [12,] FALSE FALSE FALSE FALSE
## [13,] FALSE FALSE FALSE FALSE
## [14,] FALSE FALSE FALSE FALSE
## [15,] FALSE FALSE FALSE FALSE
## [16,] FALSE FALSE FALSE FALSE
## [17,] FALSE FALSE FALSE FALSE
## [18,] FALSE FALSE FALSE FALSE
## [19,] FALSE FALSE FALSE FALSE
## [20,] FALSE FALSE FALSE FALSE
## [21,] FALSE FALSE FALSE FALSE
## [22,] FALSE FALSE FALSE FALSE
## [23,] FALSE FALSE FALSE FALSE
## [24,] FALSE FALSE FALSE FALSE
## [25,] FALSE FALSE FALSE FALSE
## [26,] FALSE FALSE FALSE FALSE
## [27,] FALSE FALSE FALSE FALSE
## [28,] FALSE FALSE FALSE FALSE
## [29,] FALSE FALSE FALSE FALSE
## [30,] FALSE FALSE FALSE FALSE
## [31,] FALSE FALSE FALSE FALSE
## [32,] FALSE FALSE FALSE FALSE
## [33,] FALSE FALSE FALSE FALSE
## [34,] FALSE FALSE FALSE FALSE
## [35,] FALSE FALSE FALSE FALSE
## [36,] FALSE FALSE FALSE FALSE
## [37,] FALSE FALSE FALSE FALSE
## [38,] FALSE FALSE FALSE FALSE
## [39,] FALSE FALSE FALSE FALSE
## [40,] FALSE FALSE FALSE FALSE
## [41,] FALSE FALSE FALSE FALSE
## [42,] FALSE FALSE FALSE FALSE
## [43,] FALSE FALSE FALSE FALSE
## [44,] FALSE FALSE FALSE FALSE
## [45,] FALSE FALSE FALSE FALSE
## [46,] FALSE FALSE FALSE FALSE
## [47,] FALSE FALSE FALSE FALSE
## [48,] FALSE FALSE FALSE FALSE
## [49,] FALSE FALSE FALSE FALSE
## [50,] FALSE FALSE FALSE FALSE
## [51,] FALSE FALSE FALSE FALSE
## [52,] FALSE FALSE FALSE FALSE
## [53,] FALSE FALSE FALSE FALSE
## [54,] FALSE FALSE FALSE FALSE
## [55,] FALSE FALSE FALSE FALSE
## [56,] FALSE FALSE FALSE FALSE
## [57,] FALSE FALSE FALSE FALSE
## [58,] FALSE FALSE FALSE FALSE
## [59,] FALSE FALSE FALSE FALSE
## [60,] FALSE FALSE FALSE FALSE
## [61,] FALSE FALSE FALSE FALSE
## [62,] FALSE FALSE FALSE FALSE
## [63,] FALSE FALSE FALSE FALSE
## [64,] FALSE FALSE FALSE FALSE
## [65,] FALSE FALSE FALSE FALSE
## [66,] FALSE FALSE FALSE FALSE
## [67,] FALSE FALSE FALSE FALSE
## [68,] FALSE FALSE FALSE FALSE
## [69,] FALSE FALSE FALSE FALSE
## [70,] FALSE FALSE FALSE FALSE
## [71,] FALSE FALSE FALSE FALSE
## [72,] FALSE FALSE FALSE FALSE
## [73,] FALSE FALSE FALSE FALSE
## [74,] FALSE FALSE FALSE FALSE
## [75,] FALSE FALSE FALSE FALSE
## [76,] FALSE FALSE FALSE FALSE
## [77,] FALSE FALSE FALSE FALSE
## [78,] FALSE FALSE FALSE FALSE
## [79,] FALSE FALSE FALSE FALSE
## [80,] FALSE FALSE FALSE FALSE
## [81,] FALSE FALSE FALSE FALSE
## [82,] FALSE FALSE FALSE FALSE
## [83,] FALSE FALSE FALSE FALSE
## [84,] FALSE FALSE FALSE FALSE
## [85,] FALSE FALSE FALSE FALSE
## [86,] FALSE FALSE FALSE FALSE
## [87,] FALSE FALSE FALSE FALSE
## [88,] FALSE FALSE FALSE FALSE
## [89,] FALSE FALSE FALSE FALSE
## [90,] FALSE FALSE FALSE FALSE
## [91,] FALSE FALSE FALSE FALSE
## [92,] FALSE FALSE FALSE FALSE
## [93,] FALSE FALSE FALSE FALSE
## [94,] FALSE FALSE FALSE FALSE
## [95,] FALSE FALSE FALSE FALSE
## [96,] FALSE FALSE FALSE FALSE
## [97,] FALSE FALSE FALSE FALSE
## [98,] FALSE FALSE FALSE FALSE
## [99,] FALSE FALSE FALSE FALSE
## [100,] FALSE FALSE FALSE FALSE
## [101,] FALSE FALSE FALSE FALSE
## [102,] FALSE FALSE FALSE FALSE
## [103,] FALSE FALSE FALSE FALSE
## [104,] FALSE FALSE FALSE FALSE
## [105,] FALSE FALSE FALSE FALSE
## [106,] FALSE FALSE FALSE FALSE
## [107,] FALSE FALSE FALSE FALSE
## [108,] FALSE FALSE FALSE FALSE
## [109,] FALSE FALSE FALSE FALSE
## [110,] FALSE FALSE FALSE FALSE
## [111,] FALSE FALSE FALSE FALSE
## [112,] FALSE FALSE FALSE FALSE
## [113,] FALSE FALSE FALSE FALSE
## [114,] FALSE FALSE FALSE FALSE
## [115,] FALSE FALSE FALSE FALSE
## [116,] FALSE FALSE FALSE FALSE
## [117,] FALSE FALSE FALSE FALSE
## [118,] FALSE FALSE FALSE FALSE
## [119,] FALSE FALSE FALSE FALSE
## [120,] FALSE FALSE FALSE FALSE
## [121,] FALSE FALSE FALSE FALSE
## [122,] FALSE FALSE FALSE FALSE
## [123,] FALSE FALSE FALSE FALSE
## [124,] FALSE FALSE FALSE FALSE
## [125,] FALSE FALSE FALSE FALSE
## [126,] FALSE FALSE FALSE FALSE
## [127,] FALSE FALSE FALSE FALSE
## [128,] FALSE FALSE FALSE FALSE
## [129,] FALSE FALSE FALSE FALSE
## [130,] FALSE FALSE FALSE FALSE
## [131,] FALSE FALSE FALSE FALSE
## [132,] FALSE FALSE FALSE FALSE
## [133,] FALSE FALSE FALSE FALSE
## [134,] FALSE FALSE FALSE FALSE
## [135,] FALSE FALSE FALSE FALSE
## [136,] FALSE FALSE FALSE FALSE
## [137,] FALSE FALSE FALSE FALSE
## [138,] FALSE FALSE FALSE FALSE
## [139,] FALSE FALSE FALSE FALSE
## [140,] FALSE FALSE FALSE FALSE
## [141,] FALSE FALSE FALSE FALSE
## [142,] FALSE FALSE FALSE FALSE
## [143,] FALSE FALSE FALSE FALSE
## [144,] FALSE FALSE FALSE FALSE
## [145,] FALSE FALSE FALSE FALSE
## [146,] FALSE FALSE FALSE FALSE
## [147,] FALSE FALSE FALSE FALSE
## [148,] FALSE FALSE FALSE FALSE
## [149,] FALSE FALSE FALSE FALSE
## [150,] FALSE FALSE FALSE FALSE
## [151,] FALSE FALSE FALSE FALSE
## [152,] FALSE FALSE FALSE FALSE
## [153,] FALSE FALSE FALSE FALSE
## [154,] FALSE FALSE FALSE FALSE
## [155,] FALSE FALSE FALSE FALSE
## [156,] FALSE FALSE FALSE FALSE
## [157,] FALSE FALSE FALSE FALSE
## [158,] FALSE FALSE FALSE FALSE
## [159,] FALSE FALSE FALSE FALSE
## [160,] FALSE FALSE FALSE FALSE
## [161,] FALSE FALSE FALSE FALSE
## [162,] FALSE FALSE FALSE FALSE
## [163,] FALSE FALSE FALSE FALSE
## [164,] FALSE FALSE FALSE FALSE
## [165,] FALSE FALSE FALSE FALSE
## [166,] FALSE FALSE FALSE FALSE
## [167,] FALSE FALSE FALSE FALSE
## [168,] FALSE FALSE FALSE FALSE
## [169,] FALSE FALSE FALSE FALSE
## [170,] FALSE FALSE FALSE FALSE
## [171,] FALSE FALSE FALSE FALSE
## [172,] FALSE FALSE FALSE FALSE
## [173,] FALSE FALSE FALSE FALSE
## [174,] FALSE FALSE FALSE FALSE
## [175,] FALSE FALSE FALSE FALSE
## [176,] FALSE FALSE FALSE FALSE
## [177,] FALSE FALSE FALSE FALSE
## [178,] FALSE FALSE FALSE FALSE
## [179,] FALSE FALSE FALSE FALSE
## [180,] FALSE FALSE FALSE FALSE
## [181,] FALSE FALSE FALSE FALSE
## [182,] FALSE FALSE FALSE FALSE
## [183,] FALSE FALSE FALSE FALSE
## [184,] FALSE FALSE FALSE FALSE
## [185,] FALSE FALSE FALSE FALSE
## [186,] FALSE FALSE FALSE FALSE
## [187,] FALSE FALSE FALSE FALSE
## [188,] FALSE FALSE FALSE FALSE
## [189,] FALSE FALSE FALSE FALSE
## [190,] FALSE FALSE FALSE FALSE
## [191,] FALSE FALSE FALSE FALSE
## [192,] FALSE FALSE FALSE FALSE
## [193,] FALSE FALSE FALSE FALSE
## [194,] FALSE FALSE FALSE FALSE
## [195,] FALSE FALSE FALSE FALSE
## [196,] FALSE FALSE FALSE FALSE
## [197,] FALSE FALSE FALSE FALSE
## [198,] FALSE FALSE FALSE FALSE
## [199,] FALSE FALSE FALSE FALSE
## [200,] FALSE FALSE FALSE FALSE
## [201,] FALSE FALSE FALSE FALSE
## [202,] FALSE FALSE FALSE FALSE
## [203,] FALSE FALSE FALSE FALSE
## [204,] FALSE FALSE FALSE FALSE
## [205,] FALSE FALSE FALSE FALSE
## [206,] FALSE FALSE FALSE FALSE
## [207,] FALSE FALSE FALSE FALSE
## [208,] FALSE FALSE FALSE FALSE
## [209,] FALSE FALSE FALSE FALSE
## [210,] FALSE FALSE FALSE FALSE
## [211,] FALSE FALSE FALSE FALSE
## [212,] FALSE FALSE FALSE FALSE
## [213,] FALSE FALSE FALSE FALSE
## [214,] FALSE FALSE FALSE FALSE
## [215,] FALSE FALSE FALSE FALSE
## [216,] FALSE FALSE FALSE FALSE
## [217,] FALSE FALSE FALSE FALSE
## [218,] FALSE FALSE FALSE FALSE
## [219,] FALSE FALSE FALSE FALSE
## [220,] FALSE FALSE FALSE FALSE
## [221,] FALSE FALSE FALSE FALSE
## [222,] FALSE FALSE FALSE FALSE
## [223,] FALSE FALSE FALSE FALSE
## [224,] FALSE FALSE FALSE FALSE
## [225,] FALSE FALSE FALSE FALSE
## [226,] FALSE FALSE FALSE FALSE
## [227,] FALSE FALSE FALSE FALSE
## [228,] FALSE FALSE FALSE FALSE
## [229,] FALSE FALSE FALSE FALSE
## [230,] FALSE FALSE FALSE FALSE
## [231,] FALSE FALSE FALSE FALSE
## [232,] FALSE FALSE FALSE FALSE
## [233,] FALSE FALSE FALSE FALSE
## [234,] FALSE FALSE FALSE FALSE
## [235,] FALSE FALSE FALSE FALSE
## [236,] FALSE FALSE FALSE FALSE
## [237,] FALSE FALSE FALSE FALSE
## [238,] FALSE FALSE FALSE FALSE
## [239,] FALSE FALSE FALSE FALSE
## [240,] FALSE FALSE FALSE FALSE
## [241,] FALSE FALSE FALSE FALSE
## [242,] FALSE FALSE FALSE FALSE
## [243,] FALSE FALSE FALSE FALSE
## [244,] FALSE FALSE FALSE FALSE
## [245,] FALSE FALSE FALSE FALSE
## [246,] FALSE FALSE FALSE FALSE
## [247,] FALSE FALSE FALSE FALSE
## [248,] FALSE FALSE FALSE FALSE
## [249,] FALSE FALSE FALSE FALSE
## [250,] FALSE FALSE FALSE FALSE
## [251,] FALSE FALSE FALSE FALSE
## [252,] FALSE FALSE FALSE FALSE
## [253,] FALSE FALSE FALSE FALSE
## [254,] FALSE FALSE FALSE FALSE
## [255,] FALSE FALSE FALSE FALSE
## [256,] FALSE FALSE FALSE FALSE
## [257,] FALSE FALSE FALSE FALSE
## [258,] FALSE FALSE FALSE FALSE
## [259,] FALSE FALSE FALSE FALSE
## [260,] FALSE FALSE FALSE FALSE
## [261,] FALSE FALSE FALSE FALSE
## [262,] FALSE FALSE FALSE FALSE
## [263,] FALSE FALSE FALSE FALSE
## [264,] FALSE FALSE FALSE FALSE
## [265,] FALSE FALSE FALSE FALSE
## [266,] FALSE FALSE FALSE FALSE
## [267,] FALSE FALSE FALSE FALSE
## [268,] FALSE FALSE FALSE FALSE
## [269,] FALSE FALSE FALSE FALSE
## [270,] FALSE FALSE FALSE FALSE
## [271,] FALSE FALSE FALSE FALSE
## [272,] FALSE FALSE FALSE FALSE
## [273,] FALSE FALSE FALSE FALSE
## [274,] FALSE FALSE FALSE FALSE
## [275,] FALSE FALSE FALSE FALSE
## [276,] FALSE FALSE FALSE FALSE
## [277,] FALSE FALSE FALSE FALSE
## [278,] FALSE FALSE FALSE FALSE
## [279,] FALSE FALSE FALSE FALSE
## [280,] FALSE FALSE FALSE FALSE
## [281,] FALSE FALSE FALSE FALSE
## [282,] FALSE FALSE FALSE FALSE
## [283,] FALSE FALSE FALSE FALSE
## [284,] FALSE FALSE FALSE FALSE
## [285,] FALSE FALSE FALSE FALSE
## [286,] FALSE FALSE FALSE FALSE
## [287,] FALSE FALSE FALSE FALSE
## [288,] FALSE FALSE FALSE FALSE
## [289,] FALSE FALSE FALSE FALSE
## [290,] FALSE FALSE FALSE FALSE
## [291,] FALSE FALSE FALSE FALSE
## [292,] FALSE FALSE FALSE FALSE
## [293,] FALSE FALSE FALSE FALSE
## [294,] FALSE FALSE FALSE FALSE
## [295,] FALSE FALSE FALSE FALSE
## [296,] FALSE FALSE FALSE FALSE
## [297,] FALSE FALSE FALSE FALSE
Additionally, columns were inspected using the colSums(is.na()) function in R. As consistent with the previous analyses, the colSums(is.na()) function returned 100% of 0 counts indicating the absence of missing values in this dataset.
colSums(is.na(myheartdata))
## age sex cp trestbps chol fbs restecg thalach
## 0 0 0 0 0 0 0 0
## exang oldpeak slope ca thal condition
## 0 0 0 0 0 0
If missing values had been present, consideration of multiple imputation methods would have been included in the process. A variety of multiple imputation methods exist which could be used, or compared in future projects.
Beaulieu-Jones et al, (2018) addressed multiple imputation in a comparison of 12 imputation methods for missing laboratory values in 602,366 patient records using the MICE package in R and the fancyimpute library from Python. Results indicated many frequently used methods for imputation, such as mean, median, KNN and singular value decomposition (SVD), changed little across multiple imputations and therefore increased risk of bias if used for multiple imputations. Beaulieau-Jones et al. (2018) found the least bias in multiple imputations using MICE norm and MICE pmm (predictive mean matching) (Beaulieu-Jones et al, 2018).
Zeinulla et al. (2023) use the MICE method for imputation of missing values in the Heart Disease dataset from the UCI Machine Learning Repository. The authors explain MICE is particularly suitable for managing missing values in health record datasets to maintain the integrity of the dataset. The authors use the method of MICE-pmm (predictive mean matching) for imputation of missing values. Additionally, the dataset was found to be unbalanced, with a smaller percentage of values for some classes. The SMOTE (Synthetic Minority Over-sampling Technique) and Tomek links were then used to add synthetic data eliminating the requirement of duplicating data for balance. By using multiple imputation methods, values are managed in a manner likely to be representative of the complete dataset and subsequently likely to lead to higher performance in machine learning models (Zeinulla et al, 2023).
Electronic health record data requires management of missing values often due to unanswered survey questions, absence of follow up, human error, technological or mechanical error, and variability in treatment approach across physicians (Konstanitnos Psychogyios et al, 2022). The Cleveland Heart dataset used in this EDA includes electronic health record data which would have been likely to contain missing values, but no missing values were present in the analysis for this EDA. If missing values had been present, consideration of multiple imputation methods would have been included in the process. Multiple imputation methods are desirable for electronic health record data management due to the flexibility, reduced risk of bias seen in simple imputation methods, and inclusion of uncertainty in calculations for imputed values. By using multiple imputation methods, values are managed in a manner likely to be representative of the complete dataset and subsequently likely to lead to higher performance in machine learning models.
Beaulieu-Jones, Brett K, et al. “Characterizing and Managing Missing Structured Data in Electronic Health Records: Data Analysis.” JMIR Medical Informatics, vol. 6, no. 1, 23 Feb. 2018, p. e11, https://doi.org/10.2196/medinform.8960. Accessed 4 July 2022.
Centers for Disease Control and Prevention. “About Heart Disease.” Heart Disease, CDC, 15 May 2024, www.cdc.gov/heart-disease/about/index.html.
“Heart Disease Cleveland.” Www.kaggle.com, www.kaggle.com/datasets/ritwikb3/heart-disease-cleveland.
Ismail, Aishah. “Exploratory Data Analysis on Heart Disease UCI Data Set** | towards Data Science.” Towards Data Science, 13 Sept. 2020, towardsdatascience.com/exploratory-data-analysis-on-heart-disease-uci-data-set-ae129e47b323/. Accessed 6 Sept. 2025.
Konstantinos Psychogyios, et al. “Comparison of Missing Data Imputation Methods Using the Framingham Heart Study Dataset.” IEEE-EMBS International Conference on Biomedical and Health Informatics (BHI …), vol. 9, 27 Sept. 2022, pp. 1–5, https://doi.org/10.1109/bhi56158.2022.9926882. Accessed 13 Sept. 2025.
Zeinulla, Elzhan, et al. “Effective Diagnosis of Heart Disease Imposed by Incomplete Data Based on Fuzzy Random Forest.” 2020 IEEE International Conference on Fuzzy Systems (FUZZ-IEEE), July 2020, https://doi.org/10.1109/fuzz48607.2020.9177531. Accessed 6 Feb. 2023.