{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"provenance": [],
"toc_visible": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
},
"language_info": {
"name": "python"
}
},
"cells": [
{
"cell_type": "code",
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"import seaborn as sns\n",
"from sklearn.preprocessing import OneHotEncoder"
],
"metadata": {
"id": "6KGpLGo9fyE9"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "Fcx1MLFHvUgo",
"outputId": "750162be-ac7c-4f50-a418-ca08cef3d269"
},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(303, 14)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" age sex cp trestbps chol fbs restecg thalach exang oldpeak \\\n",
"0 63.0 1.0 1.0 145.0 233.0 1.0 2.0 150.0 0.0 2.3 \n",
"1 67.0 1.0 4.0 160.0 286.0 0.0 2.0 108.0 1.0 1.5 \n",
"2 67.0 1.0 4.0 120.0 229.0 0.0 2.0 129.0 1.0 2.6 \n",
"3 37.0 1.0 3.0 130.0 250.0 0.0 0.0 187.0 0.0 3.5 \n",
"4 41.0 0.0 2.0 130.0 204.0 0.0 2.0 172.0 0.0 1.4 \n",
"\n",
" slope ca thal num \n",
"0 3.0 0.0 6.0 0 \n",
"1 2.0 3.0 3.0 2 \n",
"2 2.0 2.0 7.0 1 \n",
"3 3.0 0.0 3.0 0 \n",
"4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
"
\n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1.0 \n",
" 2.0 \n",
" 150.0 \n",
" 0.0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0.0 \n",
" 2.0 \n",
" 108.0 \n",
" 1.0 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0.0 \n",
" 2.0 \n",
" 129.0 \n",
" 1.0 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0.0 \n",
" 0.0 \n",
" 187.0 \n",
" 0.0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0.0 \n",
" 2.0 \n",
" 172.0 \n",
" 0.0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "cleveland_df",
"summary": "{\n \"name\": \"cleveland_df\",\n \"rows\": 303,\n \"fields\": [\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.038662442446746,\n \"min\": 29.0,\n \"max\": 77.0,\n \"num_unique_values\": 41,\n \"samples\": [\n 61.0,\n 64.0,\n 44.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.46729882777012993,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9601256119600138,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.59974772958769,\n \"min\": 94.0,\n \"max\": 200.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 124.0,\n 192.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.77691754263704,\n \"min\": 126.0,\n \"max\": 564.0,\n \"num_unique_values\": 152,\n \"samples\": [\n 321.0,\n 187.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.35619787492797644,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9949712915251782,\n \"min\": 0.0,\n \"max\": 2.0,\n \"num_unique_values\": 3,\n \"samples\": [\n 2.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 22.875003276980376,\n \"min\": 71.0,\n \"max\": 202.0,\n \"num_unique_values\": 91,\n \"samples\": [\n 170.0,\n 114.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.46979446452231655,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.1610750220686348,\n \"min\": 0.0,\n \"max\": 6.2,\n \"num_unique_values\": 40,\n \"samples\": [\n 2.4,\n 0.2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.6162261453459619,\n \"min\": 1.0,\n \"max\": 3.0,\n \"num_unique_values\": 3,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n \"3.0\",\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"3.0\",\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 2
}
],
"source": [
"# URL dataset dari UCI Machine Learning Repository\n",
"url = 'https://archive.ics.uci.edu/ml/machine-learning-databases/heart-disease/processed.cleveland.data'\n",
"\n",
"# Gunakan fungsi read_csv() untuk memuat dataset dari URL\n",
"cleveland_df = pd.read_csv(url, header=None)\n",
"columns = ['age', 'sex', 'cp', 'trestbps', 'chol', 'fbs', 'restecg', 'thalach', 'exang', 'oldpeak', 'slope', 'ca', 'thal', 'num']\n",
"cleveland_df.columns = columns\n",
"\n",
"# Tampilkan beberapa baris pertama dari dataset\n",
"print(cleveland_df.shape)\n",
"cleveland_df.head()"
]
},
{
"cell_type": "code",
"source": [
"# URL dataset dari UCI Machine Learning Repository\n",
"url = 'https://archive.ics.uci.edu/ml/machine-learning-databases/heart-disease/processed.hungarian.data'\n",
"\n",
"# Gunakan fungsi read_csv() untuk memuat dataset dari URL\n",
"hungarian_df = pd.read_csv(url, header=None)\n",
"columns = ['age', 'sex', 'cp', 'trestbps', 'chol', 'fbs', 'restecg', 'thalach', 'exang', 'oldpeak', 'slope', 'ca', 'thal', 'num']\n",
"hungarian_df.columns = columns\n",
"\n",
"# Tampilkan beberapa baris pertama dari dataset\n",
"print(hungarian_df.shape)\n",
"hungarian_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "87urP7DJzqhX",
"outputId": "0ebac086-2353-4f99-cf20-056b035b6a78"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(294, 14)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" age sex cp trestbps chol fbs restecg thalach exang oldpeak slope ca \\\n",
"0 28 1 2 130 132 0 2 185 0 0.0 ? ? \n",
"1 29 1 2 120 243 0 0 160 0 0.0 ? ? \n",
"2 29 1 2 140 ? 0 0 170 0 0.0 ? ? \n",
"3 30 0 1 170 237 0 1 170 0 0.0 ? ? \n",
"4 31 0 2 100 219 0 1 150 0 0.0 ? ? \n",
"\n",
" thal num \n",
"0 ? 0 \n",
"1 ? 0 \n",
"2 ? 0 \n",
"3 6 0 \n",
"4 ? 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 28 \n",
" 1 \n",
" 2 \n",
" 130 \n",
" 132 \n",
" 0 \n",
" 2 \n",
" 185 \n",
" 0 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 29 \n",
" 1 \n",
" 2 \n",
" 120 \n",
" 243 \n",
" 0 \n",
" 0 \n",
" 160 \n",
" 0 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 2 \n",
" 29 \n",
" 1 \n",
" 2 \n",
" 140 \n",
" ? \n",
" 0 \n",
" 0 \n",
" 170 \n",
" 0 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 3 \n",
" 30 \n",
" 0 \n",
" 1 \n",
" 170 \n",
" 237 \n",
" 0 \n",
" 1 \n",
" 170 \n",
" 0 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" 6 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 31 \n",
" 0 \n",
" 2 \n",
" 100 \n",
" 219 \n",
" 0 \n",
" 1 \n",
" 150 \n",
" 0 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "hungarian_df",
"summary": "{\n \"name\": \"hungarian_df\",\n \"rows\": 294,\n \"fields\": [\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 7,\n \"min\": 28,\n \"max\": 66,\n \"num_unique_values\": 38,\n \"samples\": [\n 61,\n 65,\n 32\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 4,\n \"num_unique_values\": 4,\n \"samples\": [\n 1,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 32,\n \"samples\": [\n \"136\",\n \"142\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 154,\n \"samples\": [\n \"264\",\n \"217\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"0\",\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"0\",\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 72,\n \"samples\": [\n \"165\",\n \"99\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"0\",\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9086479156256426,\n \"min\": 0.0,\n \"max\": 5.0,\n \"num_unique_values\": 10,\n \"samples\": [\n 4.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"2\",\n \"3\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"0\",\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"6\",\n \"7\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 3
}
]
},
{
"cell_type": "code",
"source": [
"# URL dataset dari UCI Machine Learning Repository\n",
"url = 'https://archive.ics.uci.edu/ml/machine-learning-databases/heart-disease/processed.switzerland.data'\n",
"\n",
"# Gunakan fungsi read_csv() untuk memuat dataset dari URL\n",
"switzerland_df = pd.read_csv(url, header=None)\n",
"columns = ['age', 'sex', 'cp', 'trestbps', 'chol', 'fbs', 'restecg', 'thalach', 'exang', 'oldpeak', 'slope', 'ca', 'thal', 'num']\n",
"switzerland_df.columns = columns\n",
"\n",
"# Tampilkan beberapa baris pertama dari dataset\n",
"print(switzerland_df.shape)\n",
"switzerland_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "N955KTQF54yK",
"outputId": "05347136-ad19-4474-a8d5-4be26fbc7ae1"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(123, 14)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" age sex cp trestbps chol fbs restecg thalach exang oldpeak slope ca \\\n",
"0 32 1 1 95 0 ? 0 127 0 .7 1 ? \n",
"1 34 1 4 115 0 ? ? 154 0 .2 1 ? \n",
"2 35 1 4 ? 0 ? 0 130 1 ? ? ? \n",
"3 36 1 4 110 0 ? 0 125 1 1 2 ? \n",
"4 38 0 4 105 0 ? 0 166 0 2.8 1 ? \n",
"\n",
" thal num \n",
"0 ? 1 \n",
"1 ? 1 \n",
"2 7 3 \n",
"3 6 1 \n",
"4 ? 2 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 32 \n",
" 1 \n",
" 1 \n",
" 95 \n",
" 0 \n",
" ? \n",
" 0 \n",
" 127 \n",
" 0 \n",
" .7 \n",
" 1 \n",
" ? \n",
" ? \n",
" 1 \n",
" \n",
" \n",
" 1 \n",
" 34 \n",
" 1 \n",
" 4 \n",
" 115 \n",
" 0 \n",
" ? \n",
" ? \n",
" 154 \n",
" 0 \n",
" .2 \n",
" 1 \n",
" ? \n",
" ? \n",
" 1 \n",
" \n",
" \n",
" 2 \n",
" 35 \n",
" 1 \n",
" 4 \n",
" ? \n",
" 0 \n",
" ? \n",
" 0 \n",
" 130 \n",
" 1 \n",
" ? \n",
" ? \n",
" ? \n",
" 7 \n",
" 3 \n",
" \n",
" \n",
" 3 \n",
" 36 \n",
" 1 \n",
" 4 \n",
" 110 \n",
" 0 \n",
" ? \n",
" 0 \n",
" 125 \n",
" 1 \n",
" 1 \n",
" 2 \n",
" ? \n",
" 6 \n",
" 1 \n",
" \n",
" \n",
" 4 \n",
" 38 \n",
" 0 \n",
" 4 \n",
" 105 \n",
" 0 \n",
" ? \n",
" 0 \n",
" 166 \n",
" 0 \n",
" 2.8 \n",
" 1 \n",
" ? \n",
" ? \n",
" 2 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "switzerland_df",
"summary": "{\n \"name\": \"switzerland_df\",\n \"rows\": 123,\n \"fields\": [\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9,\n \"min\": 32,\n \"max\": 74,\n \"num_unique_values\": 37,\n \"samples\": [\n 54,\n 50,\n 38\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 4,\n \"num_unique_values\": 4,\n \"samples\": [\n 4,\n 2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 21,\n \"samples\": [\n \"95\",\n \"180\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 0,\n \"num_unique_values\": 1,\n \"samples\": [\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 68,\n \"samples\": [\n \"175\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 36,\n \"samples\": [\n \"1.3\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"7\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 4
}
]
},
{
"cell_type": "code",
"source": [
"# URL dataset dari UCI Machine Learning Repository\n",
"url = 'https://archive.ics.uci.edu/ml/machine-learning-databases/heart-disease/processed.va.data'\n",
"\n",
"# Gunakan fungsi read_csv() untuk memuat dataset dari URL\n",
"va_df = pd.read_csv(url, header=None)\n",
"columns = ['age', 'sex', 'cp', 'trestbps', 'chol', 'fbs', 'restecg', 'thalach', 'exang', 'oldpeak', 'slope', 'ca', 'thal', 'num']\n",
"va_df.columns = columns\n",
"\n",
"# Tampilkan beberapa baris pertama dari dataset\n",
"print(va_df.shape)\n",
"va_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "rnZ58Q_36Lhc",
"outputId": "ff44df0a-cfea-46fc-dc1f-7bb68d1b39fc"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(200, 14)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" age sex cp trestbps chol fbs restecg thalach exang oldpeak slope ca \\\n",
"0 63 1 4 140 260 0 1 112 1 3 2 ? \n",
"1 44 1 4 130 209 0 1 127 0 0 ? ? \n",
"2 60 1 4 132 218 0 1 140 1 1.5 3 ? \n",
"3 55 1 4 142 228 0 1 149 1 2.5 1 ? \n",
"4 66 1 3 110 213 1 2 99 1 1.3 2 ? \n",
"\n",
" thal num \n",
"0 ? 2 \n",
"1 ? 0 \n",
"2 ? 2 \n",
"3 ? 1 \n",
"4 ? 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 63 \n",
" 1 \n",
" 4 \n",
" 140 \n",
" 260 \n",
" 0 \n",
" 1 \n",
" 112 \n",
" 1 \n",
" 3 \n",
" 2 \n",
" ? \n",
" ? \n",
" 2 \n",
" \n",
" \n",
" 1 \n",
" 44 \n",
" 1 \n",
" 4 \n",
" 130 \n",
" 209 \n",
" 0 \n",
" 1 \n",
" 127 \n",
" 0 \n",
" 0 \n",
" ? \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 2 \n",
" 60 \n",
" 1 \n",
" 4 \n",
" 132 \n",
" 218 \n",
" 0 \n",
" 1 \n",
" 140 \n",
" 1 \n",
" 1.5 \n",
" 3 \n",
" ? \n",
" ? \n",
" 2 \n",
" \n",
" \n",
" 3 \n",
" 55 \n",
" 1 \n",
" 4 \n",
" 142 \n",
" 228 \n",
" 0 \n",
" 1 \n",
" 149 \n",
" 1 \n",
" 2.5 \n",
" 1 \n",
" ? \n",
" ? \n",
" 1 \n",
" \n",
" \n",
" 4 \n",
" 66 \n",
" 1 \n",
" 3 \n",
" 110 \n",
" 213 \n",
" 1 \n",
" 2 \n",
" 99 \n",
" 1 \n",
" 1.3 \n",
" 2 \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "va_df",
"summary": "{\n \"name\": \"va_df\",\n \"rows\": 200,\n \"fields\": [\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 7,\n \"min\": 35,\n \"max\": 77,\n \"num_unique_values\": 39,\n \"samples\": [\n 45,\n 71,\n 66\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 4,\n \"num_unique_values\": 4,\n \"samples\": [\n 3,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 41,\n \"samples\": [\n \"138\",\n \"152\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 100,\n \"samples\": [\n \"244\",\n \"312\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"0\",\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 1,\n 2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 60,\n \"samples\": [\n \"112\",\n \"120\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"1\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 15,\n \"samples\": [\n \"?\",\n \"4\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"?\",\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"0\",\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"3\",\n \"6\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 0,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 5
}
]
},
{
"cell_type": "code",
"source": [
"frames = [cleveland_df, hungarian_df, switzerland_df, va_df]\n",
"heart_disease_df = pd.concat(frames)\n",
"heart_disease_df = heart_disease_df.reset_index()\n",
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "9zJvalX66Vg1",
"outputId": "3e09045f-0e94-4d25-d8f1-f7941bf79712"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang oldpeak \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1.0 2.0 150.0 0.0 2.3 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0.0 2.0 108.0 1.0 1.5 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0.0 2.0 129.0 1.0 2.6 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0.0 0.0 187.0 0.0 3.5 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0.0 2.0 172.0 0.0 1.4 \n",
"\n",
" slope ca thal num \n",
"0 3.0 0.0 6.0 0 \n",
"1 2.0 3.0 3.0 2 \n",
"2 2.0 2.0 7.0 1 \n",
"3 3.0 0.0 3.0 0 \n",
"4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1.0 \n",
" 2.0 \n",
" 150.0 \n",
" 0.0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0.0 \n",
" 2.0 \n",
" 108.0 \n",
" 1.0 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0.0 \n",
" 2.0 \n",
" 129.0 \n",
" 1.0 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0.0 \n",
" 0.0 \n",
" 187.0 \n",
" 0.0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0.0 \n",
" 2.0 \n",
" 172.0 \n",
" 0.0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 103,\n \"samples\": [\n 165.0,\n \"132\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 336,\n \"samples\": [\n 257.0,\n 277.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 0.0,\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 2.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 198,\n \"samples\": [\n 126.0,\n \"138\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 1.0,\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 82,\n \"samples\": [\n 0.1,\n 2.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 6
}
]
},
{
"cell_type": "code",
"source": [
"# heart_disease_df.to_csv('heart_disease.csv', index=False)"
],
"metadata": {
"id": "6zqNClgD7HlI"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"# heart_disease_df = pd.read_csv('./heart_disease.csv')\n",
"# heart_disease_df"
],
"metadata": {
"id": "tADQJi148G5n"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "GY-KjbcxB-FL",
"outputId": "f9e2f2fc-4aba-4513-d3f5-4b4a005eec5b"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null object \n",
" 5 chol 920 non-null object \n",
" 6 fbs 920 non-null object \n",
" 7 restecg 920 non-null object \n",
" 8 thalach 920 non-null object \n",
" 9 exang 920 non-null object \n",
" 10 oldpeak 920 non-null object \n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(3), int64(2), object(10)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['trestbps'].replace({'?': 0}, inplace=True)"
],
"metadata": {
"id": "zHzlTKrzFJTB"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df['trestbps'] = heart_disease_df['trestbps'].astype(float)"
],
"metadata": {
"id": "c9XtHA3KF2zC"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['trestbps'] != 0]['trestbps'].mean()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "7k7o87B_IAFM",
"outputId": "beeee69e-0528-46c6-fb71-bb8d34848f84"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"132.28604651162792"
]
},
"metadata": {},
"execution_count": 12
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['trestbps'] != 0]['trestbps'].median()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "QjtgzMiTIsOP",
"outputId": "1ad4697a-2530-44e2-94a4-d9a0ff7b926d"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"130.0"
]
},
"metadata": {},
"execution_count": 13
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['trestbps'] != 0]['trestbps'].mode()[0]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "dVFBGliBI_mz",
"outputId": "390bf838-607b-49bc-b599-1fd094d636b8"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"120.0"
]
},
"metadata": {},
"execution_count": 14
}
]
},
{
"cell_type": "code",
"source": [
"sns.histplot(data=heart_disease_df[heart_disease_df['trestbps'] != 0], x=\"trestbps\")\n",
"plt.vlines(heart_disease_df[heart_disease_df['trestbps'] != 0]['trestbps'].mean(), 0, 200, color='red', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['trestbps'] != 0]['trestbps'].median(), 0, 200, color='green', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['trestbps'] != 0]['trestbps'].mode(), 0, 200, color='blue', linestyle='-', lw=3)\n",
"plt.legend(labels=[\"Mean\",\"Median\", \"Mode\"])\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"id": "WiyrZYkiGnBl",
"outputId": "9ebbf983-5237-4fae-ebbe-d6b8e1b3f236"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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YcOGCggIUE5OziW3m5qaKj8/P9sUHh5eq8cBAACcx6mXsa7k3nvvtX3dpUsXde3aVW3atNGmTZvUv3//am83JSVFycnJtnmr1UrgAQDApFz6zM5vtW7dWoGBgTp48KAkKSQkRLm5uXZ9zp49q9OnT1/yPh/p1/uAfH197SYAAGBO9Srs/Pvf/9ZPP/2k0NBQSVJMTIzOnDmj3bt32/ps2LBB5eXlio6OdlaZAADAhTj1MlZ+fr7tLI0kHT58WJmZmQoICFBAQIBmzZqlESNGKCQkRIcOHdJjjz2mtm3bKjY2VpLUsWNHDR48WOPGjVNaWprKysqUmJioe++9l09iAQAASU4+s7Nr1y51795d3bt3lyQlJyere/fumjFjhtzc3LR3717dfvvtuvbaazV27Fj17NlTn332mTw9PW3beOutt9ShQwf1799ft956q3r37q3XXnvNWYcEAABcjFPP7PTt21eGYVyy/dNPP73iNgICArRs2TJHlgUAAEykXt2zAwAAUFWEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGou/dZz4GqTnZ2tU6dOXbL9558bSupqt2zv3r1q2vSsJCkwMFARERG1WSIA1DuEHcBFZGdnq0OHjioqKrxMr0BJJ+2WDBjQX9KvAcnbu5G++SaLwAMAFyDsAC7i1KlTKioqVPSYp+Qb2qrCPqUFnto8335Zn8kvy6NxiazHj2jn4lk6deoUYQcALkDYAVyMb2grBUS0r7Ct+JeL/8v6t2grL5+ztV0WANRb3KAMAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMraGzCwBgPnv37lVTz6a2+YY//6yuFfQ52/TXPoGBgYqIiKjDCgFcTZx6ZmfLli0aNmyYwsLCZLFYtHLlSltbWVmZpk2bpi5duqhx48YKCwvTH//4Rx07dsxuG61atZLFYrGb5syZU8dHAuBCAwYMUM+ePW1T/wEDLurT/4I+HTp0VHZ2thMqBXA1cOqZnYKCAkVFRWnMmDEaPny4XVthYaH27Nmj6dOnKyoqSj///LMeffRR3X777dq1a5dd39mzZ2vcuHG2eR8fnzqpH0DF+iS9JA/52ub9CqzS/Eft+vSd/JLyGvvKevyIdi6epVOnTlX77E52drZOnTpVrXU5qwSYn1PDzpAhQzRkyJAK2/z8/LR27Vq7Za+88opuuOEGZWdn2/1w8vHxUUhISK3WCqDy/K9pKy+3/17G8vnl54v7tGgrN5+mFy2vquzsbHXo0FFFRYXVWt/bu5G++SaLwAOYWL26ZycvL08Wi0X+/v52y+fMmaOnn35aERERuu+++5SUlKSGDS99aCUlJSopKbHNW63W2ioZQC07deqUiooKFT3mKfmGtqrSuo44qwTA9dWbsFNcXKxp06Zp5MiR8vX97+nxSZMmqUePHgoICND27duVkpKi48ePa968eZfcVmpqqmbNmlUXZQOoI76hrRQQ0d7ZZQBwQfUi7JSVlekPf/iDDMPQokWL7NqSk5NtX3ft2lUeHh566KGHlJqaKk9Pzwq3l5KSYree1WpVeHh47RQPAACcyuXDzvmgc/ToUW3YsMHurE5FoqOjdfbsWR05ckTt21f8V56np+clgxAAADAXlw4754POd999p40bN6pZs2ZXXCczM1MNGjRQcHBwHVQIAABcnVPDTn5+vg4ePGibP3z4sDIzMxUQEKDQ0FDdfffd2rNnj1atWqVz584pJydHkhQQECAPDw9lZGRo586d6tevn3x8fJSRkaGkpCTFxcWpadOaf8oDAADUf04NO7t27VK/fv1s8+fvo4mPj9fMmTP10UcfSZK6detmt97GjRvVt29feXp6avny5Zo5c6ZKSkoUGRmppKQku/txAADA1c2pYadv374yDOOS7Zdrk6QePXpox44dji4LAACYCC8CBQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAAplatsNO6dWv99NNPFy0/c+aMWrduXeOiAAAAHKVaYefIkSM6d+7cRctLSkr0448/1rgoAAAAR6nSi0DPv4Vckj799FP5+fnZ5s+dO6f169erVatWDisOAACgpqoUdu68805JksViUXx8vF2bu7u7WrVqpblz5zqsOAAAgJqqUtgpLy+XJEVGRuqLL75QYGBgrRQFAADgKFUKO+cdPnzY0XUAAADUimqFHUlav3691q9fr9zcXNsZn/MWL15c48IAAAAcoVphZ9asWZo9e7auv/56hYaGymKxOLouAAAAh6hW2ElLS1N6erruv/9+R9cDAADgUNV6zk5paaluuukmR9cCAADgcNUKOw8++KCWLVvm6FoAAAAcrlqXsYqLi/Xaa69p3bp16tq1q9zd3e3a582b55DiAAAAaqpaYWfv3r3q1q2bJGnfvn12bdysDAAAXEm1ws7GjRsdXQcAAECtqNY9OwAAAPVFtc7s9OvX77KXqzZs2FDtggAAABypWmHn/P0655WVlSkzM1P79u276AWhAAAAzlStsPPiiy9WuHzmzJnKz8+vUUEAAACO5NB7duLi4ngvFgAAcCkODTsZGRny8vJy5CYBAABqpFqXsYYPH243bxiGjh8/rl27dmn69OkOKQwAAMARqhV2/Pz87OYbNGig9u3ba/bs2Ro0aJBDCgMAAHCEaoWdJUuWOLoOAACAWlGje3Z2796tpUuXaunSpfryyy+rvP6WLVs0bNgwhYWFyWKxaOXKlXbthmFoxowZCg0Nlbe3twYMGKDvvvvOrs/p06c1atQo+fr6yt/fX2PHjuUTYQAAwKZaYSc3N1e///3v1atXL02aNEmTJk1Sz5491b9/f508ebLS2ykoKFBUVJQWLlxYYftzzz2nl19+WWlpadq5c6caN26s2NhYFRcX2/qMGjVK+/fv19q1a7Vq1Spt2bJF48ePr85hAQAAE6pW2HnkkUf0yy+/aP/+/Tp9+rROnz6tffv2yWq1atKkSZXezpAhQ/SXv/xFd91110VthmFo/vz5evLJJ3XHHXeoa9euevPNN3Xs2DHbGaCsrCytWbNG/+///T9FR0erd+/eWrBggZYvX65jx45V59AAAIDJVCvsrFmzRq+++qo6duxoW9apUyctXLhQn3zyiUMKO3z4sHJycjRgwADbMj8/P0VHRysjI0PSrx919/f31/XXX2/rM2DAADVo0EA7d+685LZLSkpktVrtJgAAYE7VCjvl5eVyd3e/aLm7u7vKy8trXJQk5eTkSJKaN29ut7x58+a2tpycHAUHB9u1N2zYUAEBAbY+FUlNTZWfn59tCg8Pd0jNAADA9VQr7Pz+97/Xo48+anep6Mcff1RSUpL69+/vsOJqS0pKivLy8mzTDz/84OySAABALalW2HnllVdktVrVqlUrtWnTRm3atFFkZKSsVqsWLFjg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hmFcvWNlGIaRm5trSDI2b95sGEblxuLjjz82GjRoYOTk5Nj6LFq0yPD19TVKSkocWh9ndmropptu0vr16/Xtt99Kkr766itt3bpVQ4YMkSQdPnxYOTk5GjBggG0dPz8/RUdHKyMjwyk1u4rKjE1GRob8/f11/fXX2/oMGDBADRo00M6dO+u8ZleSl5cni8Vie68bY/Vf5eXluv/++zV16lR17tz5onbG6lfl5eVavXq1rr32WsXGxio4OFjR0dF2l292796tsrIyu/+nHTp0UERExFX3M+ymm27SRx99pB9//FGGYWjjxo369ttvNWjQIElX91jl5eVJkgICAiRVbiwyMjLUpUsXuwcAx8bGymq1av/+/Q6tj7BTQ48//rjuvfdedejQQe7u7urevbsmT56sUaNGSZJycnIk6aKnOTdv3tzWdrWqzNjk5OQoODjYrr1hw4YKCAi4qsevuLhY06ZN08iRI20v1mOs/uvZZ59Vw4YNNWnSpArbGatf5ebmKj8/X3PmzNHgwYP1f//3f7rrrrs0fPhwbd68WdKvY+Xh4XHRy5Kvxp9hCxYsUKdOndSiRQt5eHho8ODBWrhwoW655RZJV+9YlZeXa/Lkyfrd736n6667TlLlxiInJ6fCn//n2xzJFK+LcKZ33nlHb731lpYtW6bOnTsrMzNTkydPVlhYmOLj451dHkyorKxMf/jDH2QYhhYtWuTsclzO7t279dJLL2nPnj2yWCzOLsellZeXS5LuuOMOJSUlSZK6deum7du3Ky0tTX369HFmeS5nwYIF2rFjhz766CO1bNlSW7ZsUUJCgsLCwuzOYFxtEhIStG/fPm3dutXZpVwSZ3ZqaOrUqbazO126dNH999+vpKQkpaamSpJCQkIk6aI70E+cOGFru1pVZmxCQkKUm5tr13727FmdPn36qhy/80Hn6NGjWrt2re2sjsRYnffZZ58pNzdXERERatiwoRo2bKijR4/qT3/6k1q1aiWJsTovMDBQDRs2VKdOneyWd+zY0fZprJCQEJWWlurMmTN2fa62n2FFRUV64oknNG/ePA0bNkxdu3ZVYmKi7rnnHr3wwguSrs6xSkxM1KpVq7Rx40a1aNHCtrwyYxESElLhz//zbY5E2KmhwsJCNWhgP4xubm62v5giIyMVEhKi9evX29qtVqt27typmJiYOq3V1VRmbGJi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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['trestbps'].replace({0: heart_disease_df[heart_disease_df['trestbps'] != 0]['trestbps'].median()}, inplace=True)"
],
"metadata": {
"id": "Dmx7758EKAfZ"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "nAjWxwleKRcw",
"outputId": "b09c4d8a-0b8c-4659-9c9c-b70bfd68a5bc"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang oldpeak \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1.0 2.0 150.0 0.0 2.3 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0.0 2.0 108.0 1.0 1.5 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0.0 2.0 129.0 1.0 2.6 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0.0 0.0 187.0 0.0 3.5 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0.0 2.0 172.0 0.0 1.4 \n",
"\n",
" slope ca thal num \n",
"0 3.0 0.0 6.0 0 \n",
"1 2.0 3.0 3.0 2 \n",
"2 2.0 2.0 7.0 1 \n",
"3 3.0 0.0 3.0 0 \n",
"4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1.0 \n",
" 2.0 \n",
" 150.0 \n",
" 0.0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0.0 \n",
" 2.0 \n",
" 108.0 \n",
" 1.0 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0.0 \n",
" 2.0 \n",
" 129.0 \n",
" 1.0 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0.0 \n",
" 0.0 \n",
" 187.0 \n",
" 0.0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0.0 \n",
" 2.0 \n",
" 172.0 \n",
" 0.0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 336,\n \"samples\": [\n 257.0,\n 277.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 0.0,\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 2.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 198,\n \"samples\": [\n 126.0,\n \"138\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 1.0,\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 82,\n \"samples\": [\n 0.1,\n 2.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 17
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "NxVi2sCqKZ6N",
"outputId": "3287004d-92a3-4a12-fc5b-536349076084"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null object \n",
" 6 fbs 920 non-null object \n",
" 7 restecg 920 non-null object \n",
" 8 thalach 920 non-null object \n",
" 9 exang 920 non-null object \n",
" 10 oldpeak 920 non-null object \n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(4), int64(2), object(9)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['chol'].replace({'?': 0}, inplace=True)"
],
"metadata": {
"id": "xirflmdWKwaB"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df['chol'] = heart_disease_df['chol'].astype(float)"
],
"metadata": {
"id": "C06t1c9QKwaC"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['chol'] != 0]['chol'].mean()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "3ec33b26-2583-48d0-fabb-ec48c55eb4c0",
"id": "4nwYWdlgKwaD"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"246.83286908077994"
]
},
"metadata": {},
"execution_count": 21
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['chol'] != 0]['chol'].median()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "dfb1b425-3f00-4fb5-acbc-c6c8e21e00cd",
"id": "_L4K08ehKwaE"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"239.5"
]
},
"metadata": {},
"execution_count": 22
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['chol'] != 0]['chol'].mode()[0]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "3a1408df-081e-48b5-c0d7-2cefb69b588d",
"id": "wvAi7QaFKwaF"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"220.0"
]
},
"metadata": {},
"execution_count": 23
}
]
},
{
"cell_type": "code",
"source": [
"sns.histplot(data=heart_disease_df[heart_disease_df['chol'] != 0], x=\"chol\")\n",
"plt.vlines(heart_disease_df[heart_disease_df['chol'] != 0]['chol'].mean(), 0, 100, color='red', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['chol'] != 0]['chol'].median(), 0, 100, color='green', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['chol'] != 0]['chol'].mode()[0], 0, 100, color='blue', linestyle='-', lw=3)\n",
"plt.legend(labels=[\"Mean\",\"Median\", \"Mode\"])\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"outputId": "e4574523-9c43-4df0-b946-f439dad8eb33",
"id": "Epw-H7cRKwaF"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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Ag8AUyPsAF5UV31aMhwaPHm+ouK7qNqwK994yKXP8KfeVvRpSfNdl5eXl6t+UUey2Wwqt9s1bEqu2naI//EBkiq/P6nNr0+VzWYj7AAwNcIO0ATaRMUpLDZBQWf/LVld29pFd1K70575nLYd4hUWy3PeAOCHmKAMAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMLdDXBQC4tOPHj+tsVFS9+hYVFXm3GABoxgg7gJ/65X336X8bOKauts4rtQBAc0bYAfzUgHHZCrimd736lh7ape0r5qrOQdgBgAsRdgA/FRoZo9axCfXqW/n9SS9XAwDNFxOUAQCAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqfl92Pn22281ZswYdejQQaGhobr++uu1Y8cOZ7thGJo1a5bi4+MVGhqq1NRUHTx40IcVAwAAf+LXYeff//63hgwZoqCgIH3yySfat2+fFi5cqPbt2zv7LFiwQIsWLdLSpUu1bds2tW3bVmlpaaqqqvJh5QAAwF8E+rqAK5k/f74SEhK0fPly57KkpCTnz4ZhKDc3V88995zuuusuSdKKFSsUGxurNWvW6P7772/ymgEAgH/x67Dz0UcfKS0tTb/85S+1efNmXXXVVXr00Uf10EMPSZKOHj2q4uJipaamOsdERERo0KBBKigouGzYqa6uVnV1tfO93W737obA66xWq2w2W737FxUVea8YAIBf8euwc+TIES1ZskTTp0/XM888o+3bt+vxxx9X69atNXbsWBUXF0uSYmNjXcbFxsY62y4lJydHL774oldrR9OxWq3qmpyscjdCa11tnRcqAgD4E78OOw6HQwMGDNC8efMkSf369dOePXu0dOlSjR071u31ZmVlafr06c73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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['chol'].replace({0: heart_disease_df[heart_disease_df['chol'] != 0]['chol'].median()}, inplace=True)"
],
"metadata": {
"id": "RyH3eWN-KwaG"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "pOZi1s-BMB6g",
"outputId": "e9954cde-c03d-43aa-c374-9e09e3e02b69"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang oldpeak \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1.0 2.0 150.0 0.0 2.3 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0.0 2.0 108.0 1.0 1.5 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0.0 2.0 129.0 1.0 2.6 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0.0 0.0 187.0 0.0 3.5 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0.0 2.0 172.0 0.0 1.4 \n",
"\n",
" slope ca thal num \n",
"0 3.0 0.0 6.0 0 \n",
"1 2.0 3.0 3.0 2 \n",
"2 2.0 2.0 7.0 1 \n",
"3 3.0 0.0 3.0 0 \n",
"4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1.0 \n",
" 2.0 \n",
" 150.0 \n",
" 0.0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0.0 \n",
" 2.0 \n",
" 108.0 \n",
" 1.0 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0.0 \n",
" 2.0 \n",
" 129.0 \n",
" 1.0 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0.0 \n",
" 0.0 \n",
" 187.0 \n",
" 0.0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0.0 \n",
" 2.0 \n",
" 172.0 \n",
" 0.0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 0.0,\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 2.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 198,\n \"samples\": [\n 126.0,\n \"138\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 1.0,\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 82,\n \"samples\": [\n 0.1,\n 2.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 26
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "VDZgSB_NMZo6",
"outputId": "55e81aae-12c7-4b5c-dd12-bb7decf932be"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null object \n",
" 7 restecg 920 non-null object \n",
" 8 thalach 920 non-null object \n",
" 9 exang 920 non-null object \n",
" 10 oldpeak 920 non-null object \n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(5), int64(2), object(8)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['fbs'].replace({'?': -1}, inplace=True)\n",
"heart_disease_df['fbs'] = heart_disease_df['fbs'].astype(int)"
],
"metadata": {
"id": "Vg23tH_6Mjhs"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"sns.countplot(heart_disease_df, x=\"fbs\")\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"id": "ZCNE_-PVNJW6",
"outputId": "5d64b665-8c00-471e-bbf1-c5897a6c48f7"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['fbs'].replace({-1: 0}, inplace=True)"
],
"metadata": {
"id": "ZFRtSOv4Ndu-"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "9EnT-8HCNl1F",
"outputId": "0c1126be-c9f4-4d2c-d9bb-9371df3b326f"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang oldpeak \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2.0 150.0 0.0 2.3 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2.0 108.0 1.0 1.5 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2.0 129.0 1.0 2.6 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0.0 187.0 0.0 3.5 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2.0 172.0 0.0 1.4 \n",
"\n",
" slope ca thal num \n",
"0 3.0 0.0 6.0 0 \n",
"1 2.0 3.0 3.0 2 \n",
"2 2.0 2.0 7.0 1 \n",
"3 3.0 0.0 3.0 0 \n",
"4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2.0 \n",
" 150.0 \n",
" 0.0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2.0 \n",
" 108.0 \n",
" 1.0 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2.0 \n",
" 129.0 \n",
" 1.0 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0.0 \n",
" 187.0 \n",
" 0.0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2.0 \n",
" 172.0 \n",
" 0.0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 2.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 198,\n \"samples\": [\n 126.0,\n \"138\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 1.0,\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 82,\n \"samples\": [\n 0.1,\n 2.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 31
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "YLYdmZmuNmhD",
"outputId": "5f8816b4-0263-464d-c3d0-00290d558da8"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null object \n",
" 8 thalach 920 non-null object \n",
" 9 exang 920 non-null object \n",
" 10 oldpeak 920 non-null object \n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(5), int64(3), object(7)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['restecg'].replace({'?': -1}, inplace=True)\n",
"heart_disease_df['restecg'] = heart_disease_df['restecg'].astype(int)"
],
"metadata": {
"id": "NNSZKKdwOKvs"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"sns.countplot(heart_disease_df, x=\"restecg\")\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"outputId": "d89c032d-41fe-41e2-b74c-a8d8540956ae",
"id": "J3S3sDHUOKvt"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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OhwOxcfHa8CAASopKTnnTNdff72qq6tVW1sbWLd3795O+gkACDViB0BY8Xg8OnHihKZMmaK9e/fqyJEjevvtt3X//ferra1Nu3fv1qOPPqr3339fVVVV+stf/qLjx49ryJAhkqQBAwboo48+UmVlpb788ku1trZq6tSp6t27t+666y7t2LFDR48e1bZt2/TTn/5UX3zxhSRp0aJFevLJJ7VixQodOnRI+/bt09NPPy1Juv3223XttdcqLy9PH330kcrKyjR//nxJClwDBCB8ETsAwkpKSorKysrU1tamrKwspaena86cOUpISFBERITsdru2b9+uO+64Q9/61rc0f/58Pfnkk5owYYIkaebMmbr++us1YsQIJSUlqaysTD169ND27dvVr18/TZ48WUOGDNGMGTPU1NQku90uScrLy9Py5cu1atUqDR06VHfeeacOHTokSYqMjNSmTZt06tQpjRw5Uj/60Y8Cn8bq3r27NT8oABeMT2MBQAeUlZVpzJgxOnz4sK699lqrxwHwNYgdALgAGzduVFxcnK677jodPnxYP/vZz3TVVVfp73//u9WjAfgGfBoLAC7AyZMnNW/ePFVVVal3797KzMzUk08+afVYAC4AZ3YAAIDRuEAZAAAYjdgBAABGI3YAAIDRiB0AAGA0YgcAABiN2AEAAEYjdgAAgNGIHQAAYLT/B4KZor9LMR3ZAAAAAElFTkSuQmCC\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['restecg'].replace({-1: 0}, inplace=True)"
],
"metadata": {
"id": "iz-SOcckOKvt"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "HAs0FILtPTTU",
"outputId": "17ac70be-40ff-4721-993a-0e07333c2da8"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang oldpeak \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0.0 2.3 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1.0 1.5 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1.0 2.6 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0.0 3.5 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0.0 1.4 \n",
"\n",
" slope ca thal num \n",
"0 3.0 0.0 6.0 0 \n",
"1 2.0 3.0 3.0 2 \n",
"2 2.0 2.0 7.0 1 \n",
"3 3.0 0.0 3.0 0 \n",
"4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0.0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1.0 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1.0 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0.0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0.0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 198,\n \"samples\": [\n 126.0,\n \"138\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 1.0,\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 82,\n \"samples\": [\n 0.1,\n 2.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 36
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "RMpdUhS9EY8p",
"outputId": "75a0e362-a23d-469d-ccf5-9f4a3b9143d2"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null object \n",
" 9 exang 920 non-null object \n",
" 10 oldpeak 920 non-null object \n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(5), int64(4), object(6)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['thalach'].replace({'?': 0}, inplace=True)"
],
"metadata": {
"id": "_Ebm6XxP3cHV"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df['thalach'] = heart_disease_df['thalach'].astype(float)"
],
"metadata": {
"id": "_kqIdxc-3cHW"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['thalach'] != 0]['thalach'].mean()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "b2956346-187d-458c-cef1-52ded76f07bb",
"id": "sUqLNt4_3cHX"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"137.5456647398844"
]
},
"metadata": {},
"execution_count": 40
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['thalach'] != 0]['thalach'].median()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "438b2780-784e-499e-abbd-7fe05dcbcbdc",
"id": "nGyralXK3cHX"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"140.0"
]
},
"metadata": {},
"execution_count": 41
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['thalach'] != 0]['thalach'].mode()[0]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "92073111-8f61-4514-860b-e50997e18d68",
"id": "efhsL8p43cHY"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"150.0"
]
},
"metadata": {},
"execution_count": 42
}
]
},
{
"cell_type": "code",
"source": [
"sns.histplot(data=heart_disease_df[heart_disease_df['thalach'] != 0], x=\"thalach\")\n",
"plt.vlines(heart_disease_df[heart_disease_df['thalach'] != 0]['thalach'].mean(), 0, 200, color='red', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['thalach'] != 0]['thalach'].median(), 0, 200, color='green', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['thalach'] != 0]['thalach'].mode()[0], 0, 200, color='blue', linestyle='-', lw=3)\n",
"plt.legend(labels=[\"Mean\",\"Median\", \"Mode\"])\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"outputId": "05679065-7bf4-4fd5-8b8b-966d1341c7da",
"id": "8DYt7q0J3cHY"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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APXH5S6dD5B06qJtBw4a9H9Pnmoo6THb8UGDBkkXXYHPZfNAzbumsLNlyxbFxcVp165d8vHx0e23367bb79dkpSXl6dOnTopMTFRv/nNb6o0X0FBgQ4fPmx9ffToUaWlpcnf31/h4eGaNm2a/t//+39q06aN9dLz0NBQ6714OnTooCFDhmjChAlKTExUWVmZ4uLidN9993ElFoBqudyl876F+dLiP9ls23/ay8pr5CNJKlW+kmU73m/6y3KXj/U1l80DznFNYWfx4sWaMGGCfHx8Ko35+vrqkUce0aJFi6ocdvbu3asBAwZYX8+YMUOSNHbsWK1cuVKPPfaYCgsLNXHiROXm5qpv377asGGDzcNG3377bcXFxWngwIHWmwq+8sor19IWAFRy8aXz3mcqH6bya95aLt6/HqY6e+4XKfui8Rtay9OlSaX3AahZ1xR2vvrqKy1YsOCy44MHD9aLL75Y5fn69+8vwzAuO26xWDRv3jzNmzfvstv4+/tzA0EAAHBZ13Q11smTJy95yfl5rq6uOnXq4qPaAAAAznNNYeeGG27QgQMHLju+f/9+myunAAAAnO2aws6wYcM0Z84cnT17ttJYcXGxnn76ad1xxx12Kw4AAOB6XdM5O08++aSSkpLUtm1bxcXFqV27X0/eO3jwoJYuXapz587piSeecEihAAAA1XFNYadZs2b64osvNHnyZMXHx1tPLrZYLIqOjtbSpUsrPd4BAADAma75poItWrTQJ598ol9++UWHDx+WYRhq06aNmjTh8koAAFD7VOsOypLUpEkT9erVy561AAAA2F21HgQKAABQVxB2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqdX6sNOyZUtZLJZKS2xsrCSpf//+lcYmTZrk5KoBAEBt4ersAq5mz549OnfunPX1gQMHdPvtt+v3v/+9dd2ECRM0b9486+uGDRvWaI0AAKD2qvVhJzAw0Ob1/Pnz1apVK/Xr18+6rmHDhgoODq7p0gAAQB1Q6w9jXai0tFRvvfWWxo8f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wU8//aSYmBg1bdpUXl5e6tKli/bu3WsdNwxDTz31lEJCQuTl5aVBgwbp+++/d2LF9nPu3DnNmTNHERER8vLyUqtWrfTss8/aPKfETP1v375dI0aMUGhoqCwWi9auXWszXpVeT58+rTFjxsjHx0d+fn566KGHrM9Rq82u1HtZWZlmz56tLl26qFGjRgoNDdUf//hHnThxwmaOutq7dPWf/YUmTZoki8WixYsX26yvq/1Xpff09HTdeeed8vX1VaNGjdSrVy9lZGRYx8+ePavY2Fg1bdpUjRs31qhRoyrdDLa2ulr/BQUFiouLU/PmzeXl5aWOHTsqMTHRZpu62n9CQoJ69eolb29vBQUF6e6779ahQ4dstqlKbxkZGRo+fLgaNmyooKAgzZo1S+Xl5TXWB2HnOv3yyy+69dZb5ebmpk8//VTffvutFi5cqCZNmli3ef755/XKK68oMTFRu3fvVqNGjRQdHa2zZ886sXL7WLBggZYtW6ZXX31V6enpWrBggZ5//nktWbLEuo2Z+i8sLFS3bt20dOnSS45XpdcxY8bom2++0caNG7V+/Xpt375dEydOrKkWqu1KvRcVFWnfvn2aM2eO9u3bp6SkJB06dEh33nmnzXZ1tXfp6j/78z744APt2rXrkrevr6v9X633I0eOqG/fvmrfvr22bdum/fv3a86cOfL09LRuM336dH300Ud69913lZycrBMnTmjkyJE11cJ1uVr/M2bM0IYNG/TWW28pPT1d06ZNU1xcnNatW2fdpq72n5ycrNjYWO3atUsbN25UWVmZBg8erMLCQus2V+vt3LlzGj58uEpLS/XFF19o1apVWrlypZ566qmaa+T6H8VZv82ePdvo27fvZccrKiqM4OBg44UXXrCuy83NNTw8PIx//vOfNVGiQw0fPtwYP368zbqRI0caY8aMMQzD3P1LMj744APr66r0+u233xqSjD179li3+fTTTw2LxWL89NNPNVb79bq490v5z3/+Y0gyjh8/bhiGeXo3jMv3/9///te44YYbjAMHDhgtWrQwXnrpJeuYWfq/VO/33nuvERMTc9n35ObmGm5ubsa7775rXZeenm5IMlJSUhxVqkNcqv9OnToZ8+bNs1nXo0cP44knnjAMw1z9Z2dnG5KM5ORkwzCq1tsnn3xiNGjQwMjKyrJus2zZMsPHx8coKSmpkbrZs3Od1q1bp549e+r3v/+9goKC1L17d/3973+3jh89elRZWVkaNGiQdZ2vr68iIyOVkpLijJLtqk+fPtq8ebO+++47SdJXX32lHTt2aOjQoZLM3/+FqtJrSkqK/Pz81LNnT+s2gwYNUoMGDbR79+4ar9mR8vLyZLFYrM+dM3vvFRUVeuCBBzRr1ix16tSp0rhZ+6+oqNDHH3+stm3bKjo6WkFBQYqMjLQ51JOamqqysjKbfxvt27dXeHi4KX4P9OnTR+vWrdNPP/0kwzC0detWfffddxo8eLAkc/Wfl5cnSfL395dUtd5SUlLUpUsXmxv9RkdHKz8/X998802N1E3YuU4//PCDli1bpjZt2uizzz7T5MmTNXXqVK1atUqSlJWVJUmV7ubcrFkz61hd9pe//EX33Xef2rdvLzc3N3Xv3l3Tpk3TmDFjJJm//wtVpdesrCwFBQXZjLu6usrf399U34+zZ89q9uzZGj16tPWBgGbvfcGCBXJ1ddXUqVMvOW7W/rOzs1VQUKD58+dryJAh+ve//6177rlHI0eOVHJysqRfe3d3d6/0wGWz/B5YsmSJOnbsqObNm8vd3V1DhgzR0qVLddttt0kyT/8VFRWaNm2abr31VnXu3FlS1XrLysq65O/F82M1wRSPi3CmiooK9ezZU88995wkqXv37jpw4IASExM1duxYJ1fneO+8847efvttrV69Wp06dVJaWpqmTZum0NDQetE/KisrK9Mf/vAHGYahZcuWObucGpGamqqXX35Z+/btk8VicXY5NaqiokKSdNddd2n69OmSpJtuuklffPGFEhMT1a9fP2eWVyOWLFmiXbt2ad26dWrRooW2b9+u2NhYhYaG2uzxqOtiY2N14MAB7dixw9mlXDP27FynkJAQdezY0WZdhw4drFchBAcHS1KlM9NPnjxpHavLZs2aZd2706VLFz3wwAOaPn26EhISJJm//wtVpdfg4GBlZ2fbjJeXl+v06dOm+H6cDzrHjx/Xxo0brXt1JHP3/vnnnys7O1vh4eFydXWVq6urjh8/rj//+c9q2bKlJPP2HxAQIFdX16v+HiwtLVVubq7NNmb4PVBcXKzHH39cixYt0ogRI9S1a1fFxcXp3nvv1YsvvijJHP3HxcVp/fr12rp1q5o3b25dX5XegoODL/l78fxYTSDsXKdbb7210mV43333nVq0aCFJioiIUHBwsDZv3mwdz8/P1+7duxUVFVWjtTpCUVGRGjSw/c/IxcXF+n97Zu//QlXpNSoqSrm5uUpNTbVus2XLFlVUVCgyMrLGa7an80Hn+++/16ZNm9S0aVObcTP3/sADD2j//v1KS0uzLqGhoZo1a5Y+++wzSebt393dXb169bri78Gbb75Zbm5uNv82Dh06pIyMjDr/e6CsrExlZWVX/D1Yl/s3DENxcXH64IMPtGXLFkVERNiMV6W3qKgoff311zZh//z/DF0ckh3ZCK7Df/7zH8PV1dX461//anz//ffG22+/bTRs2NB46623rNvMnz/f8PPzMz788ENj//79xl133WVEREQYxcXFTqzcPsaOHWvccMMNxvr1642jR48aSUlJRkBAgPHYY49ZtzFT/2fOnDG+/PJL48svvzQkGYsWLTK+/PJL6xVHVel1yJAhRvfu3Y3du3cbO3bsMNq0aWOMHj3aWS1V2ZV6Ly0tNe68806jefPmRlpampGZmWldLrzaoq72bhhX/9lf7OKrsQyj7vZ/td6TkpIMNzc34/XXXze+//57Y8mSJYaLi4vx+eefW+eYNGmSER4ebmzZssXYu3evERUVZURFRTmrpWtytf779etndOrUydi6davxww8/GCtWrDA8PT2N1157zTpHXe1/8uTJhq+vr7Ft2zabf9dFRUXWba7WW3l5udG5c2dj8ODBRlpamrFhwwYjMDDQiI+Pr7E+CDt28NFHHxmdO3c2PDw8jPbt2xuvv/66zXhFRYUxZ84co1mzZoaHh4cxcOBA49ChQ06q1r7y8/ONP/3pT0Z4eLjh6elp3HjjjcYTTzxh8wfOTP1v3brVkFRpGTt2rGEYVev1559/NkaPHm00btzY8PHxMR588EHjzJkzTujm2lyp96NHj15yTJKxdetW6xx1tXfDuPrP/mKXCjt1tf+q9P7GG28YrVu3Njw9PY1u3boZa9eutZmjuLjYePTRR40mTZoYDRs2NO655x4jMzOzhjupnqv1n5mZaYwbN84IDQ01PD09jXbt2hkLFy40KioqrHPU1f4v9+96xYoV1m2q0tuxY8eMoUOHGl5eXkZAQIDx5z//2SgrK6uxPiz/awYAAMCUOGcHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHQK2ybds2WSyWSg8WvFYtW7bU4sWL7VKTJPXv31/Tpk2z23wAag5hB4BTESIAOBphBwAAmBphB4DTjBs3TsnJyXr55ZdlsVhksVh07NgxSVJqaqp69uyphg0bqk+fPjp06JD1fUeOHNFdd92lZs2aqXHjxurVq5c2bdp0xc9atGiRunTpokaNGiksLEyPPvqoCgoKbLbZuXOn+vfvr4YNG6pJkyaKjo7WL7/8Yh2vqKjQY489Jn9/fwUHB+uZZ56x2/cCgOMQdgA4zcsvv6yoqChNmDBBmZmZyszMVFhYmCTpiSee0MKFC7V37165urpq/Pjx1vcVFBRo2LBh2rx5s7788ksNGTJEI0aMUEZGxmU/q0GDBnrllVf0zTffaNWqVdqyZYsee+wx63haWpoGDhyojh07KiUlRTt27NCIESN07tw56zarVq1So0aNtHv3bj3//POaN2+eNm7c6IDvDAB74qnnAJyqf//+uummm6wnE2/btk0DBgzQpk2bNHDgQEnSJ598ouHDh6u4uFienp6XnKdz586aNGmS4uLiJP16gvK0adMuez7Qe++9p0mTJiknJ0eSdP/99ysjI0M7duy4bJ3nzp3T559/bl3Xu3dv/fa3v9X8+fOr0zqAGsKeHQC1UteuXa1fh4SESJKys7Ml/bpnZ+bMmerQoYP8/PzUuHFjpaenX3HPzvnwdMMNN8jb21sPPPCAfv75ZxUVFUn6vz07Va3pfF3nawJQexF2ANRKbm5u1q8tFoukX8+ZkaSZM2fqgw8+0HPPPafPP/9caWlp6tKli0pLSy8517Fjx3THHXeoa9euev/995WamqqlS5dKkvU9Xl5e11TT+brO1wSg9iLsAHAqd3d3m/NiqmLnzp0aN26c7rnnHnXp0kXBwcHWE5svJTU1VRUVFVq4cKFuueUWtW3bVidOnLDZpmvXrtq8eXN1WgBQyxF2ADhVy5YttXv3bh07dkw5OTlV2lPSpk0bJSUlKS0tTV999ZXuv//+K76vdevWKisr05IlS/TDDz/oH//4hxITE222iY+P1549e/Too49q//79OnjwoJYtW2Y9pwdA3UXYAeBUM2fOlIuLizp27KjAwMArnndz3qJFi9SkSRP16dNHI0aMUHR0tHr06HHZ7bt166ZFixZpwYIF6ty5s95++20lJCTYbNO2bVv9+9//1ldffaXevXsrKipKH374oVxdXa+7RwDOxdVYAADA1NizAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATO3/AxPttzPFj7pQAAAAAElFTkSuQmCC\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['thalach'].replace({0: heart_disease_df[heart_disease_df['thalach'] != 0]['thalach'].median()}, inplace=True)"
],
"metadata": {
"id": "ZIcIEZiy3x6W"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"outputId": "8567c45c-7c56-48f4-b06a-bdfd8b3d6b23",
"id": "qzuNriGR3x6Y"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0.0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1.0 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1.0 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0.0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0.0 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3.0 0.0 6.0 0 \n",
"1 1.5 2.0 3.0 3.0 2 \n",
"2 2.6 2.0 2.0 7.0 1 \n",
"3 3.5 3.0 0.0 3.0 0 \n",
"4 1.4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0.0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1.0 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1.0 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0.0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0.0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 5,\n \"samples\": [\n 1.0,\n \"?\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 82,\n \"samples\": [\n 0.1,\n 2.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 45
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "50118a1b-de7c-4ec7-aa4b-743a12c8436e",
"id": "xq57BMRL3x6Y"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null float64\n",
" 9 exang 920 non-null object \n",
" 10 oldpeak 920 non-null object \n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(6), int64(4), object(5)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['exang'].replace({'?': -1}, inplace=True)\n",
"heart_disease_df['exang'] = heart_disease_df['exang'].astype(int)"
],
"metadata": {
"id": "tvBmwPfT6IWR"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"sns.countplot(heart_disease_df, x=\"exang\")\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"outputId": "728cf099-4e1c-41a6-dc40-ff324d80176a",
"id": "Yh_jsyAd6IWS"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['exang'].replace({-1: 0}, inplace=True)"
],
"metadata": {
"id": "zMZ_HwJo6IWS"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"outputId": "2eb7df40-6d1d-4144-cb5e-db1f6b9397a2",
"id": "qn1vGval6IWS"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3.0 0.0 6.0 0 \n",
"1 1.5 2.0 3.0 3.0 2 \n",
"2 2.6 2.0 2.0 7.0 1 \n",
"3 3.5 3.0 0.0 3.0 0 \n",
"4 1.4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 82,\n \"samples\": [\n 0.1,\n 2.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 50
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "d4db4dba-77b2-44bf-d74f-b234789c709d",
"id": "2fa2qHjc6IWS"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null float64\n",
" 9 exang 920 non-null int64 \n",
" 10 oldpeak 920 non-null object \n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(6), int64(5), object(4)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.loc[heart_disease_df['oldpeak'] != '?', ['oldpeak']] = heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].astype(float)"
],
"metadata": {
"id": "pouTkN1s4Vzu"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"heart_disease_df[(heart_disease_df['oldpeak'] != '?') & (heart_disease_df['oldpeak'] != 0)]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 424
},
"id": "Fy-YEpuz-Jdd",
"outputId": "ac0448a8-730c-4b8f-8bcf-3998b01e142a"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0 \n",
".. ... ... ... ... ... ... ... ... ... ... \n",
"904 184 57.0 1.0 4.0 130.0 207.0 0 1 96.0 1 \n",
"908 188 74.0 1.0 4.0 155.0 310.0 0 0 112.0 1 \n",
"910 190 51.0 0.0 4.0 114.0 258.0 1 2 96.0 0 \n",
"911 191 62.0 1.0 4.0 160.0 254.0 1 1 108.0 1 \n",
"912 192 53.0 1.0 4.0 144.0 300.0 1 1 128.0 1 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3.0 0.0 6.0 0 \n",
"1 1.5 2.0 3.0 3.0 2 \n",
"2 2.6 2.0 2.0 7.0 1 \n",
"3 3.5 3.0 0.0 3.0 0 \n",
"4 1.4 1.0 0.0 3.0 0 \n",
".. ... ... ... ... ... \n",
"904 1.0 2 ? ? 0 \n",
"908 1.5 3 ? ? 2 \n",
"910 1.0 1 ? ? 0 \n",
"911 3.0 2 ? ? 4 \n",
"912 1.5 2 ? ? 3 \n",
"\n",
"[488 rows x 15 columns]"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" \n",
" \n",
" 904 \n",
" 184 \n",
" 57.0 \n",
" 1.0 \n",
" 4.0 \n",
" 130.0 \n",
" 207.0 \n",
" 0 \n",
" 1 \n",
" 96.0 \n",
" 1 \n",
" 1.0 \n",
" 2 \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 908 \n",
" 188 \n",
" 74.0 \n",
" 1.0 \n",
" 4.0 \n",
" 155.0 \n",
" 310.0 \n",
" 0 \n",
" 0 \n",
" 112.0 \n",
" 1 \n",
" 1.5 \n",
" 3 \n",
" ? \n",
" ? \n",
" 2 \n",
" \n",
" \n",
" 910 \n",
" 190 \n",
" 51.0 \n",
" 0.0 \n",
" 4.0 \n",
" 114.0 \n",
" 258.0 \n",
" 1 \n",
" 2 \n",
" 96.0 \n",
" 0 \n",
" 1.0 \n",
" 1 \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 911 \n",
" 191 \n",
" 62.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 254.0 \n",
" 1 \n",
" 1 \n",
" 108.0 \n",
" 1 \n",
" 3.0 \n",
" 2 \n",
" ? \n",
" ? \n",
" 4 \n",
" \n",
" \n",
" 912 \n",
" 192 \n",
" 53.0 \n",
" 1.0 \n",
" 4.0 \n",
" 144.0 \n",
" 300.0 \n",
" 1 \n",
" 1 \n",
" 128.0 \n",
" 1 \n",
" 1.5 \n",
" 2 \n",
" ? \n",
" ? \n",
" 3 \n",
" \n",
" \n",
"
\n",
"
488 rows × 15 columns
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"summary": "{\n \"name\": \"heart_disease_df[(heart_disease_df['oldpeak'] != '?') & (heart_disease_df['oldpeak'] != 0)]\",\n \"rows\": 488,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 87,\n \"min\": 0,\n \"max\": 300,\n \"num_unique_values\": 270,\n \"samples\": [\n 33,\n 156,\n 97\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8.589247151374456,\n \"min\": 31.0,\n \"max\": 77.0,\n \"num_unique_values\": 46,\n \"samples\": [\n 36.0,\n 71.0,\n 51.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.3947640956540477,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.8803207681266904,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 18.94817639234131,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 51,\n \"samples\": [\n 95.0,\n 114.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 52.38041921226796,\n \"min\": 100.0,\n \"max\": 603.0,\n \"num_unique_values\": 176,\n \"samples\": [\n 283.0,\n 282.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 23.602098906187557,\n \"min\": 63.0,\n \"max\": 194.0,\n \"num_unique_values\": 102,\n \"samples\": [\n 165.0,\n 115.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"date\",\n \"min\": -2.6,\n \"max\": 6.2,\n \"num_unique_values\": 52,\n \"samples\": [\n 2.0,\n -1.5\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 53
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[(heart_disease_df['oldpeak'] == '?') | (heart_disease_df['oldpeak'] == 0)]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 424
},
"id": "AG0Ogeyx-1Qj",
"outputId": "9c7c5e87-8816-45fe-bfc3-a007aa730d5c"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"13 13 44.0 1.0 2.0 120.0 263.0 0 0 173.0 0 \n",
"26 26 58.0 0.0 3.0 120.0 340.0 0 0 172.0 0 \n",
"32 32 64.0 1.0 3.0 140.0 335.0 0 0 158.0 0 \n",
"35 35 42.0 1.0 4.0 140.0 226.0 0 0 178.0 0 \n",
"44 44 61.0 0.0 4.0 130.0 330.0 0 2 169.0 0 \n",
".. ... ... ... ... ... ... ... ... ... ... \n",
"915 195 54.0 0.0 4.0 127.0 333.0 1 1 154.0 0 \n",
"916 196 62.0 1.0 1.0 130.0 139.0 0 1 140.0 0 \n",
"917 197 55.0 1.0 4.0 122.0 223.0 1 1 100.0 0 \n",
"918 198 58.0 1.0 4.0 130.0 385.0 1 2 140.0 0 \n",
"919 199 62.0 1.0 2.0 120.0 254.0 0 2 93.0 1 \n",
"\n",
" oldpeak slope ca thal num \n",
"13 0.0 1.0 0.0 7.0 0 \n",
"26 0.0 1.0 0.0 3.0 0 \n",
"32 0.0 1.0 0.0 3.0 1 \n",
"35 0.0 1.0 0.0 3.0 0 \n",
"44 0.0 1.0 0.0 3.0 1 \n",
".. ... ... ... ... ... \n",
"915 0.0 ? ? ? 1 \n",
"916 ? ? ? ? 0 \n",
"917 0.0 ? ? 6 2 \n",
"918 ? ? ? ? 0 \n",
"919 0.0 ? ? ? 1 \n",
"\n",
"[432 rows x 15 columns]"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 13 \n",
" 13 \n",
" 44.0 \n",
" 1.0 \n",
" 2.0 \n",
" 120.0 \n",
" 263.0 \n",
" 0 \n",
" 0 \n",
" 173.0 \n",
" 0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 7.0 \n",
" 0 \n",
" \n",
" \n",
" 26 \n",
" 26 \n",
" 58.0 \n",
" 0.0 \n",
" 3.0 \n",
" 120.0 \n",
" 340.0 \n",
" 0 \n",
" 0 \n",
" 172.0 \n",
" 0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 32 \n",
" 32 \n",
" 64.0 \n",
" 1.0 \n",
" 3.0 \n",
" 140.0 \n",
" 335.0 \n",
" 0 \n",
" 0 \n",
" 158.0 \n",
" 0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 1 \n",
" \n",
" \n",
" 35 \n",
" 35 \n",
" 42.0 \n",
" 1.0 \n",
" 4.0 \n",
" 140.0 \n",
" 226.0 \n",
" 0 \n",
" 0 \n",
" 178.0 \n",
" 0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 44 \n",
" 44 \n",
" 61.0 \n",
" 0.0 \n",
" 4.0 \n",
" 130.0 \n",
" 330.0 \n",
" 0 \n",
" 2 \n",
" 169.0 \n",
" 0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 1 \n",
" \n",
" \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" ... \n",
" \n",
" \n",
" 915 \n",
" 195 \n",
" 54.0 \n",
" 0.0 \n",
" 4.0 \n",
" 127.0 \n",
" 333.0 \n",
" 1 \n",
" 1 \n",
" 154.0 \n",
" 0 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" ? \n",
" 1 \n",
" \n",
" \n",
" 916 \n",
" 196 \n",
" 62.0 \n",
" 1.0 \n",
" 1.0 \n",
" 130.0 \n",
" 139.0 \n",
" 0 \n",
" 1 \n",
" 140.0 \n",
" 0 \n",
" ? \n",
" ? \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 917 \n",
" 197 \n",
" 55.0 \n",
" 1.0 \n",
" 4.0 \n",
" 122.0 \n",
" 223.0 \n",
" 1 \n",
" 1 \n",
" 100.0 \n",
" 0 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" 6 \n",
" 2 \n",
" \n",
" \n",
" 918 \n",
" 198 \n",
" 58.0 \n",
" 1.0 \n",
" 4.0 \n",
" 130.0 \n",
" 385.0 \n",
" 1 \n",
" 2 \n",
" 140.0 \n",
" 0 \n",
" ? \n",
" ? \n",
" ? \n",
" ? \n",
" 0 \n",
" \n",
" \n",
" 919 \n",
" 199 \n",
" 62.0 \n",
" 1.0 \n",
" 2.0 \n",
" 120.0 \n",
" 254.0 \n",
" 0 \n",
" 2 \n",
" 93.0 \n",
" 1 \n",
" 0.0 \n",
" ? \n",
" ? \n",
" ? \n",
" 1 \n",
" \n",
" \n",
"
\n",
"
432 rows × 15 columns
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"summary": "{\n \"name\": \"heart_disease_df[(heart_disease_df['oldpeak'] == '?') | (heart_disease_df['oldpeak'] == 0)]\",\n \"rows\": 432,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 75,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 249,\n \"samples\": [\n 45,\n 52,\n 301\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.79576583167059,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 49,\n \"samples\": [\n 45.0,\n 73.0,\n 75.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4222683520478271,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9277610284489964,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 3.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 16.584507310881854,\n \"min\": 94.0,\n \"max\": 200.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 124.0,\n 190.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 50.88076522057775,\n \"min\": 85.0,\n \"max\": 529.0,\n \"num_unique_values\": 163,\n \"samples\": [\n 85.0,\n 187.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 0,\n 2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 26.076305423948227,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 97,\n \"samples\": [\n 90.0,\n 125.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"?\",\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 1.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 6,\n \"samples\": [\n \"0.0\",\n \"1.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"7.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 1,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 54
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].mean()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "3g7nS6qq6f1F",
"outputId": "deb98be9-1954-4df1-c9a7-3e157ff4c91b"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"0.8787878787878787"
]
},
"metadata": {},
"execution_count": 55
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].median()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "NtZ15VP68dnE",
"outputId": "317a6da1-cd08-4b88-cc17-2960d86cdd5f"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"0.5"
]
},
"metadata": {},
"execution_count": 56
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].mode()[0]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "7PGL6zQh8qSf",
"outputId": "ac3db2b0-1181-45d3-9657-418102f130b1"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"0.0"
]
},
"metadata": {},
"execution_count": 57
}
]
},
{
"cell_type": "code",
"source": [
"sns.histplot(data=heart_disease_df[heart_disease_df['oldpeak'] != '?'], x=\"oldpeak\")\n",
"plt.vlines(heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].mean(), 0, 400, color='red', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].median(), 0, 400, color='green', linestyle='-', lw=3)\n",
"plt.vlines(heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].mode()[0], 0, 400, color='blue', linestyle='-', lw=3)\n",
"plt.legend(labels=[\"Mean\",\"Median\", \"Mode\"])\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"id": "0FBHnYQ-8rng",
"outputId": "00081344-cf34-4d30-bda6-2150fd943425"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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uyu4cv3791dpaalMJpNiY2Md+lq0aKG6detq06ZNatasmSSprKxM27Zt04QJEyRJ0dHR+vjjjx3W+/UUE+mXydD79u1Ty5Ytq+9AXMTtYadu3br2b1Tnzp21bds2vfjii3rttdfOG3vulFpWVpZatGihsLAwffPNNw5j8vLyJElhYWEX3aePj498fHxcdQgAgFqgcWN3V3DlvLy87JekvLy8HPrq1aunsWPHatKkSQoODlZkZKTmzp2r06dPa9SoUZKkRx99VPPnz9ekSZP08MMPKzMzU2lpaQ7bmTx5srp3767ExEQ9/PDDqlevnvbt26c1a9bolVdeuSrHeaU8Zs7OORUVFSopKblg386dOyVJ4eHhkn65frh7927l/ypur1mzRmaz2X4pDACA2ujcx7pcyHPPPaf4+HgNHTpUnTp1UlZWllavXq0GDRpI+uUy1AcffKCPPvpI7du31+LFi8+7y7ldu3basGGD/v3vf+uWW25Rx44dNW3aNDVp0qTaj62y3HpmJzk5WQMGDFBkZKROnTql9PR0rV+/XqtXr1Z2drbS09M1cOBANWzYULt27dLEiRN16623ql27dpKkfv36KSYmRkOHDtXcuXOVm5urKVOmKCEhgTM3AIBa5bdnXn7ro48+sn/t6+url156SS+99NJFx99555268847HdpGjBjh8Lpr16764osvKl3r1ebWsJOfn6+HHnpIR48eVWBgoNq1a6fVq1frjjvu0KFDh7R27VotXLhQRUVFioiIUHx8vKZMmWJf38vLSytXrtTYsWNlsVhUr149DRs2zOFzeQAAQO3m1rBz7n7+C4mIiNCGDRsuu41mzZrps88+c2VZAADAQDxuzg4AAIArEXYAAIChEXYAAPgNW1UeTgWXcsV7QdgBAOB/vL29Jcnh0URwr3Pvxbn3xhlu/1BBAAA8hZeXl4KCguyf3+bv7y+TyeTmqmonm82m06dPKz8/X0FBQed9OGJlEHYAAPiVc5/An1+Tng9hYEFBQZd8KsKVIOwAAPArJpNJ4eHhCgkJUVlZmbvLqdW8vb2rdEbnHMIOAAAX4OXl5ZJftHA/JigDAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wAAABDI+wA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NurTp48GDhyonj176vXXX3fXIQEAAA/j1jM7vXv3ls1mu2j/6tWrL7uN4OBgpaenu7IsAABgIDVqzg4AAEBlEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChEXYAAIChuTXsbNy4UYMGDVKTJk1kMpn00UcfOfTbbDZNmzZN4eHh8vPzU9++ffWf//zHYcyJEyc0ePBgmc1mBQUFadSoUSosLLyKRwEAADyZW8NOUVGR2rdvr9TU1Av2z507Vy+99JIWL16srVu3ql69eoqNjVVxcbF9zODBg7V3716tWbNGK1eu1MaNGzVmzJirdQgAAMDDXePOnQ8YMEADBgy4YJ/NZtPChQs1ZcoU3XXXXZKkt956S6Ghofroo490//33a//+/Vq1apW2bdumLl26SJJefvllDRw4UPPmzVOTJk2u2rEAAADP5LFzdg4ePKjc3Fz17dvX3hYYGKhu3bopIyNDkpSRkaGgoCB70JGkvn37qk6dOtq6detFt11SUiKr1eqwAAAAY/LYsJObmytJCg0NdWgPDQ219+Xm5iokJMSh/5prrlFwcLB9zIWkpKQoMDDQvkRERLi4egAA4Ck8NuxUp+TkZBUUFNiXQ4cOubskAABQTTw27ISFhUmS8vLyHNrz8vLsfWFhYcrPz3foP3v2rE6cOGEfcyE+Pj4ym80OCwAAMCaPDTtRUVEKCwvTunXr7G1Wq1Vbt26VxWKRJFksFp08eVKZmZn2MV9++aUqKirUrVu3q14zAADwPG69G6uwsFBZWVn21wcPHtTOnTsVHBysyMhITZgwQc8884xatWqlqKgoTZ06VU2aNNHdd98tSYqOjlb//v01evRoLV68WGVlZUpMTNT999/PnVgAAECSm8PO9u3bddttt9lfJyUlSZKGDRumtLQ0PfnkkyoqKtKYMWN08uRJ9ezZU6tWrZKvr699nXfeeUeJiYnq06eP6tSpo/j4eL300ktX/VgAAIBn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KSoqSgsXLtTgwYPdXdol8Tk7AADA0Ji8AQAADI2wAwAADI2wAwAADI2wAwAADI2wAwAADI2wAwAADI2wAwAADI2wAwAADI2wA8AjrV+/XiaTSSdPnrzomLS0NAUFBV21ms6ZMWOGOnTocNX3C8A5hB0AAGBohB0AAGBohB0AblNSUqLx48crJCREvr6+6tmzp7Zt23bR8WlpaYqMjJS/v79+//vf66effnLoP3d56bXXXlNERIT8/f117733qqCgwGHcX/7yF0VHR8vX11dt2rTRq6++6tA/efJkXX/99fL391fz5s01depUlZWVXbSu7OxsNW/eXImJiTxgF/BAhB0AbvPkk0/qgw8+0LJly7Rjxw61bNlSsbGxOnHixHljt27dqlGjRikxMVE7d+7Ubbfdpmeeeea8cVlZWfr73/+uTz75RKtWrdK3336rxx57zN7/zjvvaNq0aXr22We1f/9+zZkzR1OnTtWyZcvsYwICApSWlqZ9+/bpxRdf1BtvvKEFCxZc8Bh27dqlnj176sEHH9Qrr7wik8nkgu8MAJeyAYAbFBYW2ry9vW3vvPOOva20tNTWpEkT29y5c21fffWVTZLt559/ttlsNtsDDzxgGzhwoMM27rvvPltgYKD99fTp021eXl62//73v/a2zz//3FanTh3b0aNHbTabzdaiRQtbenq6w3Zmz55ts1gsF631+eeft3Xu3NlhP+3bt7dt2rTJ1qBBA9u8efMqffwArp5r3B22ANRO2dnZKisrU48ePext3t7euummm7R//3517drVYfz+/fv1+9//3qHNYrFo1apVDm2RkZG69tprHcZUVFTowIEDCggIUHZ2tkaNGqXRo0fbx5w9e1aBgYH21++++65eeuklZWdnq7CwUGfPnpXZbHbYT05Oju644w49++yzmjBhgtPfBwDVj7ADoNYoLCyUJL3xxhvq1q2bQ5+Xl5ckKSMjQ4MHD9bMmTMVGxurwMBALV++XPPnz3cY37hxYzVp0kR/+9vfNHLkyPPCEADPwZwdAG7RokUL1a1bV5s2bbK3lZWVadu2bYqJiTlvfHR0tLZu3erQtmXLlvPG5eTk6MiRIw5j6tSpo9atWys0NFRNmjTR999/r5YtWzosUVFRkqTNmzerWbNm+tOf/qQuXbqoVatW+vHHH8/bj5+fn1auXClfX1/Fxsbq1KlTTn8vAFQvzuwAcIt69epp7NixmjRpkoKDgxUZGam5c+fq9OnTGjVqlP71r385jB8/frx69OihefPm6a677tLq1avPu4QlSb6+vho2bJjmzZsnq9Wq8ePH695771VYWJgkaebMmRo/frwCAwPVv39/lZSUaPv27fr555+VlJSkVq1aKScnR8uXL1fXrl316aef6sMPP7zoMXz66acaMGCABgwYoFWrVql+/fqu/2YBqBLO7ABwm+eee07x8fEaOnSoOnXqpKysLK1evVoNGjQ4b2z37t31xhtv6MUXX1T79u31xRdfaMqUKeeNa9mype655x4NHDhQ/fr1U7t27RxuLX/44Yf1l7/8RUuXLlXbtm3Vq1cvpaWl2c/s/O53v9PEiROVmJioDh06aPPmzZo6depFj6F+/fr6/PPPZbPZFBcXp6KiIhd8ZwC4kslm40MhABjDjBkz9NFHH2nnzp3uLgWAB+HMDgAAMDTCDgAAMDQuYwEAAEPjzA4AADA0wg4AADA0wg4AADA0wg4AADA0wg4AADA0wg4AADA0wg4AADA0wg4AADC0/wecE3zVu7fKbwAAAABJRU5ErkJggg==\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['oldpeak'].replace({'?': heart_disease_df[heart_disease_df['oldpeak'] != '?']['oldpeak'].median()}, inplace=True)"
],
"metadata": {
"id": "gu7t7Yvm9T0m"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"outputId": "d910bc0c-5fd2-4843-8766-e8985f851d13",
"id": "uQ0kTmwOB7lS"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3.0 0.0 6.0 0 \n",
"1 1.5 2.0 3.0 3.0 2 \n",
"2 2.6 2.0 2.0 7.0 1 \n",
"3 3.5 3.0 0.0 3.0 0 \n",
"4 1.4 1.0 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0 \n",
" 2.3 \n",
" 3.0 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1 \n",
" 1.5 \n",
" 2.0 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1 \n",
" 2.6 \n",
" 2.0 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0 \n",
" 3.5 \n",
" 3.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0 \n",
" 1.4 \n",
" 1.0 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.0580486984557573,\n \"min\": -2.6,\n \"max\": 6.2,\n \"num_unique_values\": 53,\n \"samples\": [\n 2.4,\n -1.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n 3.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 60
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "aaaf652a-6f5e-47bd-c8b1-fe4868dfb8a5",
"id": "3zvilbqUB7lT"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null float64\n",
" 9 exang 920 non-null int64 \n",
" 10 oldpeak 920 non-null float64\n",
" 11 slope 920 non-null object \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(7), int64(5), object(3)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['slope'].replace({'?': -1}, inplace=True)\n",
"heart_disease_df['slope'] = heart_disease_df['slope'].astype(int)"
],
"metadata": {
"id": "m_QEztqiCSh5"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"sns.countplot(heart_disease_df, x=\"slope\")\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"outputId": "8372c89c-5371-4683-cbce-e6355e5e5009",
"id": "DHa4GjbdCSh6"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['slope'].replace({-1: 2}, inplace=True)"
],
"metadata": {
"id": "HNYL4_A2CSh7"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"outputId": "bf87bf2c-d90c-42f1-ddcb-ca527792b942",
"id": "TB5FL6uxCSh7"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3 0.0 6.0 0 \n",
"1 1.5 2 3.0 3.0 2 \n",
"2 2.6 2 2.0 7.0 1 \n",
"3 3.5 3 0.0 3.0 0 \n",
"4 1.4 1 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0 \n",
" 2.3 \n",
" 3 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1 \n",
" 1.5 \n",
" 2 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1 \n",
" 2.6 \n",
" 2 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0 \n",
" 3.5 \n",
" 3 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0 \n",
" 1.4 \n",
" 1 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.0580486984557573,\n \"min\": -2.6,\n \"max\": 6.2,\n \"num_unique_values\": 53,\n \"samples\": [\n 2.4,\n -1.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 3,\n \"num_unique_values\": 3,\n \"samples\": [\n 3,\n 2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"3.0\",\n \"0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 65
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "eecad243-7de3-4608-bb85-93b818f2e0ba",
"id": "ZVei1MT9CSh7"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null float64\n",
" 9 exang 920 non-null int64 \n",
" 10 oldpeak 920 non-null float64\n",
" 11 slope 920 non-null int64 \n",
" 12 ca 920 non-null object \n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(7), int64(6), object(2)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['ca'].replace({'?': -1}, inplace=True)\n",
"heart_disease_df['ca'] = heart_disease_df['ca'].astype(float)"
],
"metadata": {
"id": "a98BEn3BEA3H"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"sns.countplot(heart_disease_df, x=\"ca\")\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"outputId": "baf98dfd-5ef3-4874-905b-c6b1ef1dc4f8",
"id": "aEBDuVHuEA3I"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['ca'].replace({-1: 0}, inplace=True)"
],
"metadata": {
"id": "3QpwOp0NEA3J"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"outputId": "d9b01fce-e158-4f1e-9e1d-33bd210f0348",
"id": "7gVcF_zhEA3J"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3 0.0 6.0 0 \n",
"1 1.5 2 3.0 3.0 2 \n",
"2 2.6 2 2.0 7.0 1 \n",
"3 3.5 3 0.0 3.0 0 \n",
"4 1.4 1 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0 \n",
" 2.3 \n",
" 3 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1 \n",
" 1.5 \n",
" 2 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1 \n",
" 2.6 \n",
" 2 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0 \n",
" 3.5 \n",
" 3 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0 \n",
" 1.4 \n",
" 1 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.0580486984557573,\n \"min\": -2.6,\n \"max\": 6.2,\n \"num_unique_values\": 53,\n \"samples\": [\n 2.4,\n -1.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 3,\n \"num_unique_values\": 3,\n \"samples\": [\n 3,\n 2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.628936484381527,\n \"min\": 0.0,\n \"max\": 3.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 3.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"6.0\",\n \"3.0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 70
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "d21c62f8-a2ab-47b5-995b-4807c39f0a70",
"id": "URCAnuzHEA3K"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null float64\n",
" 9 exang 920 non-null int64 \n",
" 10 oldpeak 920 non-null float64\n",
" 11 slope 920 non-null int64 \n",
" 12 ca 920 non-null float64\n",
" 13 thal 920 non-null object \n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(8), int64(6), object(1)\n",
"memory usage: 107.9+ KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['thal'].unique()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "zUccRxlLDzwU",
"outputId": "c3f8416a-3677-4f33-e6b1-63c917d7d112"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array(['6.0', '3.0', '7.0', '?', '6', '3', '7'], dtype=object)"
]
},
"metadata": {},
"execution_count": 72
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['thal'].replace({'?': -1}, inplace=True)\n",
"heart_disease_df['thal'] = heart_disease_df['thal'].astype(float)"
],
"metadata": {
"id": "eZAZFnifEgRh"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"sns.countplot(heart_disease_df, x=\"thal\")\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"outputId": "fa3ed330-1dc1-43d2-8625-19e15d7f904a",
"id": "6XB2K12AEgRi"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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rVu32j0W2kBTU5POPfdcPfzwwzrnnHN02223acyYMcftWxTHk5deeknDhw9XWlqa3aN0KEb8bSz8169//WsNGjQo+Pikk05q0dfxer2qqqoKWVdVVSWv19uq+dC24uLi1KtXL0lSZmam1q9fr6efflrPP/98s325xh1bt27dmr1q17dvX7355puHPeZw19zlcik+Pr5N5kR4/fOf/9QHH3ygt95664j78f3dHK/sGKRLly7q1atXcGnp/8B8Pp9KSkpC1hUXFx/2/g9EpqamJtXX1x9yG9e4Y7vwwgtVUVERsu4f//iHevbsedhjuOYd35w5c5SamqqcnJwj7se1PgQLRvvuu++sjRs3WkuWLLEkWQsWLLA2btxo7d69O7jPyJEjrYkTJwYfr1q1yoqJibEef/xxa9u2bdaUKVOs2NhYa/PmzXacAo7CxIkTrdLSUmvHjh3WZ599Zk2cONFyOBzWihUrLMviGptm3bp1VkxMjPXQQw9Z27dvt+bNm2clJCRYr732WnCfiRMnWiNHjgw+/vrrr62EhASrsLDQ2rZtmzVz5kwrOjraWrZsmR2ngGPU2Nho9ejRw5owYUKzbXx//zJix3Bz5syxJDVbpkyZEtznkksusfLy8kKOe/31163TTz/diouLs84880xryZIl7Ts4jsmoUaOsnj17WnFxcVZKSop12WWXBUPHsrjGJlq0aJF11llnWU6n0+rTp4/1wgsvhGzPy8uzLrnkkpB1H374oTVgwAArLi7OOvXUU605c+a038BoleXLl1uSrIqKimbb+P7+ZXzODgAAMBr37AAAAKMROwAAwGjEDgAAMBqxAwAAjEbsAAAAoxE7AADAaMQOAAAwGrEDAACMRuwA6PBWrlwph8OhmpqaVn2dk08+WU899VRYZgIQOYgdAB3OkCFDNH78eLvHANBBEDsAAMBoxA6ADuWWW25RaWmpnn76aTkcDjkcDn3zzTeSpPLycg0cOFAJCQm64IILVFFRETzuq6++0tVXXy2Px6PExESdd955+uCDD2w6CwDtidgB0KE8/fTT8vl8GjNmjHbv3q3du3crPT1dkvTXv/5VTzzxhDZs2KCYmBiNGjUqeNzevXt1xRVXqKSkRBs3btTll1+uq666SpWVlXadCoB2QuwA6FDcbrfi4uKUkJAgr9crr9er6OhoSdJDDz2kSy65RBkZGZo4caJWr16tffv2SZLOPvts/fGPf9RZZ52l3r1764EHHtBpp52m9957z87TAdAOiB0Axujfv3/w3926dZMkVVdXS/rvKzt33323+vbtq6SkJCUmJmrbtm28sgMcB2LsHgAAwiU2Njb4b4fDIUlqamqSJN19990qLi7W448/rl69eik+Pl7XXXedGhoabJkVQPshdgB0OHFxcWpsbDymY1atWqVbbrlFv/nNbyT995Wegzc2AzAbb2MB6HBOPvlkrV27Vt98843+/e9/B1+9OZLevXvrrbfe0qZNm/Tpp5/qd7/73VEdB6DjI3YAdDh33323oqOjlZGRoZSUlKO67+bJJ5/UCSecoAsuuEBXXXWVsrOzde6557bDtADs5rAsy7J7CAAAgLbCKzsAAMBoxA4AADAasQMAAIxG7AAAAKMROwAAwGjEDgAAMBqxAwAAjEbsAAAAoxE7AADAaMQOAAAwGrEDAACM9v8AKmdAPXp5QasAAAAASUVORK5CYII=\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['thal'].replace({-1: 3}, inplace=True)"
],
"metadata": {
"id": "0D2ILXajEgRi"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"outputId": "882e3065-0383-4e8a-a91c-9e6b277c7bf9",
"id": "I2_0xh1mEgRj"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3 0.0 6.0 0 \n",
"1 1.5 2 3.0 3.0 2 \n",
"2 2.6 2 2.0 7.0 1 \n",
"3 3.5 3 0.0 3.0 0 \n",
"4 1.4 1 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0 \n",
" 2.3 \n",
" 3 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1 \n",
" 1.5 \n",
" 2 \n",
" 3.0 \n",
" 3.0 \n",
" 2 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1 \n",
" 2.6 \n",
" 2 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0 \n",
" 3.5 \n",
" 3 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0 \n",
" 1.4 \n",
" 1 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.0580486984557573,\n \"min\": -2.6,\n \"max\": 6.2,\n \"num_unique_values\": 53,\n \"samples\": [\n 2.4,\n -1.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 3,\n \"num_unique_values\": 3,\n \"samples\": [\n 3,\n 2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.628936484381527,\n \"min\": 0.0,\n \"max\": 3.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 3.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.680000439310833,\n \"min\": 3.0,\n \"max\": 7.0,\n \"num_unique_values\": 3,\n \"samples\": [\n 6.0,\n 3.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 4,\n \"num_unique_values\": 5,\n \"samples\": [\n 2,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 76
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "7f661287-dce3-4230-fda5-a9df0cebe263",
"id": "qUvn5zkAEgRk"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null float64\n",
" 9 exang 920 non-null int64 \n",
" 10 oldpeak 920 non-null float64\n",
" 11 slope 920 non-null int64 \n",
" 12 ca 920 non-null float64\n",
" 13 thal 920 non-null float64\n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(9), int64(6)\n",
"memory usage: 107.9 KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df['num'].replace({2: 1, 3: 1, 4: 1}, inplace=True)"
],
"metadata": {
"id": "MPdZLeEZEa0d"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"sns.countplot(heart_disease_df, x=\"num\")\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 449
},
"id": "HQEkj6EXFMMi",
"outputId": "e884cfbe-53b6-4b9c-b929-fb0c102ff355"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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869//cv/52PHjgV8vbu7u1u7du3St7/97eBNBwAA0E/fKHamTJkim80mm8123stVMTExeuKJJ4I2HAAAQH99o9g5efKkfD6fLrvsMh08eFCJiYn+fVFRUUpKSlJ4eHjQhwQAAOirbxQ7Y8aMkfT518MBAACGgj5/9fzEiRPas2ePmpqazokffus4AAAIFX2Knaefflrz58/XJZdcIpfLJZvN5t9ns9mIHQAAEDL6FDurVq3Sr3/9axUXFwd7HgAAgKDq0z8q+Omnn+qOO+4I9iwAAABB16fYueOOO7R79+5gzwIAABB0fbqMdfnll+uhhx7S/v37NXHiREVGRgbsf+CBB4IyHAAAQH/1KXb++Mc/KjY2VtXV1aqurg7YZ7PZiB0AABAy+hQ7J0+eDPYcAAAAA6JP9+wAAAAMFX36ZOe+++770v2bN2/u0zAAAADB1qfY+fTTTwO2Ozs79e6776q5ufm8vyAUAADAKn2Kne3bt5+z1tPTo/nz5+s73/lOv4cCAAAIlqDdsxMWFqaioiKtWbMmWC8JAADQb0G9QfnDDz9UV1dXMF8SAACgX/p0GauoqChg2+fz6dSpU3r55ZeVn58flMEAAACCoU+x849//CNgOywsTImJifr973//ld/UAgAAGEx9ip09e/YEew4AAIAB0afY6XX69GkdP35cknTFFVcoMTExKEMBAAAES59uUG5tbdV9992nUaNGadq0aZo2bZqSk5NVUFCgzz77LNgzAgAA9FmfYqeoqEjV1dXasWOHmpub1dzcrJdeeknV1dX6xS9+EewZAQAA+qxPl7H+8pe/6IUXXtD06dP9azfddJNiYmJ05513asOGDcGaDwAAoF/69MnOZ599JqfTec56UlISl7EAAEBI6VPsuN1uLV++XG1tbf61//73v3r44YfldruDNhwAAEB/9eky1tq1a3XjjTdq9OjRmjx5siTpn//8p+x2u3bv3h3UAQEAAPqjT7EzceJEnThxQs8++6zef/99SdI999yj2bNnKyYmJqgDAgAA9EefYqe0tFROp1Pz5s0LWN+8ebNOnz6t4uLioAwHAADQX326Z+epp57S+PHjz1m/8sortXHjxn4PBQAAECx9ih2Px6NRo0ads56YmKhTp071eygAAIBg6VPspKSk6K233jpn/a233lJycnK/hwIAAAiWPt2zM2/ePC1a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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"print(heart_disease_df.shape)\n",
"heart_disease_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "WvI0c6L_FX-A",
"outputId": "4501d62a-a015-428d-a975-5dc9822e09a3"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 15)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" index age sex cp trestbps chol fbs restecg thalach exang \\\n",
"0 0 63.0 1.0 1.0 145.0 233.0 1 2 150.0 0 \n",
"1 1 67.0 1.0 4.0 160.0 286.0 0 2 108.0 1 \n",
"2 2 67.0 1.0 4.0 120.0 229.0 0 2 129.0 1 \n",
"3 3 37.0 1.0 3.0 130.0 250.0 0 0 187.0 0 \n",
"4 4 41.0 0.0 2.0 130.0 204.0 0 2 172.0 0 \n",
"\n",
" oldpeak slope ca thal num \n",
"0 2.3 3 0.0 6.0 0 \n",
"1 1.5 2 3.0 3.0 1 \n",
"2 2.6 2 2.0 7.0 1 \n",
"3 3.5 3 0.0 3.0 0 \n",
"4 1.4 1 0.0 3.0 0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" index \n",
" age \n",
" sex \n",
" cp \n",
" trestbps \n",
" chol \n",
" fbs \n",
" restecg \n",
" thalach \n",
" exang \n",
" oldpeak \n",
" slope \n",
" ca \n",
" thal \n",
" num \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 0 \n",
" 63.0 \n",
" 1.0 \n",
" 1.0 \n",
" 145.0 \n",
" 233.0 \n",
" 1 \n",
" 2 \n",
" 150.0 \n",
" 0 \n",
" 2.3 \n",
" 3 \n",
" 0.0 \n",
" 6.0 \n",
" 0 \n",
" \n",
" \n",
" 1 \n",
" 1 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 160.0 \n",
" 286.0 \n",
" 0 \n",
" 2 \n",
" 108.0 \n",
" 1 \n",
" 1.5 \n",
" 2 \n",
" 3.0 \n",
" 3.0 \n",
" 1 \n",
" \n",
" \n",
" 2 \n",
" 2 \n",
" 67.0 \n",
" 1.0 \n",
" 4.0 \n",
" 120.0 \n",
" 229.0 \n",
" 0 \n",
" 2 \n",
" 129.0 \n",
" 1 \n",
" 2.6 \n",
" 2 \n",
" 2.0 \n",
" 7.0 \n",
" 1 \n",
" \n",
" \n",
" 3 \n",
" 3 \n",
" 37.0 \n",
" 1.0 \n",
" 3.0 \n",
" 130.0 \n",
" 250.0 \n",
" 0 \n",
" 0 \n",
" 187.0 \n",
" 0 \n",
" 3.5 \n",
" 3 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
" 4 \n",
" 4 \n",
" 41.0 \n",
" 0.0 \n",
" 2.0 \n",
" 130.0 \n",
" 204.0 \n",
" 0 \n",
" 2 \n",
" 172.0 \n",
" 0 \n",
" 1.4 \n",
" 1 \n",
" 0.0 \n",
" 3.0 \n",
" 0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "heart_disease_df",
"summary": "{\n \"name\": \"heart_disease_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 82,\n \"min\": 0,\n \"max\": 302,\n \"num_unique_values\": 303,\n \"samples\": [\n 179,\n 228,\n 111\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.9309688168655602,\n \"min\": 1.0,\n \"max\": 4.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 4.0,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.0580486984557573,\n \"min\": -2.6,\n \"max\": 6.2,\n \"num_unique_values\": 53,\n \"samples\": [\n 2.4,\n -1.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 3,\n \"num_unique_values\": 3,\n \"samples\": [\n 3,\n 2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.628936484381527,\n \"min\": 0.0,\n \"max\": 3.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 3.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.680000439310833,\n \"min\": 3.0,\n \"max\": 7.0,\n \"num_unique_values\": 3,\n \"samples\": [\n 6.0,\n 3.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"num\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 80
}
]
},
{
"cell_type": "code",
"source": [
"heart_disease_df.info()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "bsej8V7LF-Kc",
"outputId": "8b33dcf7-747c-42b7-9a68-6082525976dc"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\n",
"RangeIndex: 920 entries, 0 to 919\n",
"Data columns (total 15 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 index 920 non-null int64 \n",
" 1 age 920 non-null float64\n",
" 2 sex 920 non-null float64\n",
" 3 cp 920 non-null float64\n",
" 4 trestbps 920 non-null float64\n",
" 5 chol 920 non-null float64\n",
" 6 fbs 920 non-null int64 \n",
" 7 restecg 920 non-null int64 \n",
" 8 thalach 920 non-null float64\n",
" 9 exang 920 non-null int64 \n",
" 10 oldpeak 920 non-null float64\n",
" 11 slope 920 non-null int64 \n",
" 12 ca 920 non-null float64\n",
" 13 thal 920 non-null float64\n",
" 14 num 920 non-null int64 \n",
"dtypes: float64(9), int64(6)\n",
"memory usage: 107.9 KB\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"for column in heart_disease_df.columns:\n",
" print(heart_disease_df[column].value_counts())"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "4APsGOxBG3pB",
"outputId": "8eb31e4a-07c4-45f3-e22e-19b527ddf7ea"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"0 4\n",
"78 4\n",
"92 4\n",
"91 4\n",
"90 4\n",
" ..\n",
"298 1\n",
"299 1\n",
"300 1\n",
"301 1\n",
"302 1\n",
"Name: index, Length: 303, dtype: int64\n",
"54.0 51\n",
"58.0 43\n",
"55.0 41\n",
"56.0 38\n",
"57.0 38\n",
"52.0 36\n",
"62.0 35\n",
"51.0 35\n",
"59.0 35\n",
"53.0 33\n",
"60.0 32\n",
"61.0 31\n",
"48.0 31\n",
"63.0 30\n",
"50.0 25\n",
"41.0 24\n",
"46.0 24\n",
"43.0 24\n",
"64.0 22\n",
"49.0 22\n",
"65.0 21\n",
"44.0 19\n",
"47.0 19\n",
"45.0 18\n",
"42.0 18\n",
"38.0 16\n",
"67.0 15\n",
"39.0 15\n",
"69.0 13\n",
"40.0 13\n",
"66.0 13\n",
"35.0 11\n",
"37.0 11\n",
"68.0 10\n",
"34.0 7\n",
"70.0 7\n",
"74.0 7\n",
"36.0 6\n",
"32.0 5\n",
"71.0 5\n",
"72.0 4\n",
"29.0 3\n",
"75.0 3\n",
"31.0 2\n",
"33.0 2\n",
"76.0 2\n",
"77.0 2\n",
"30.0 1\n",
"28.0 1\n",
"73.0 1\n",
"Name: age, dtype: int64\n",
"1.0 726\n",
"0.0 194\n",
"Name: sex, dtype: int64\n",
"4.0 496\n",
"3.0 204\n",
"2.0 174\n",
"1.0 46\n",
"Name: cp, dtype: int64\n",
"130.0 175\n",
"120.0 131\n",
"140.0 102\n",
"110.0 59\n",
"150.0 56\n",
"160.0 50\n",
"125.0 29\n",
"115.0 19\n",
"135.0 18\n",
"128.0 17\n",
"145.0 16\n",
"100.0 15\n",
"138.0 15\n",
"112.0 14\n",
"170.0 14\n",
"124.0 12\n",
"180.0 12\n",
"122.0 12\n",
"132.0 12\n",
"118.0 10\n",
"134.0 9\n",
"142.0 9\n",
"105.0 9\n",
"136.0 8\n",
"155.0 8\n",
"108.0 7\n",
"152.0 7\n",
"126.0 7\n",
"144.0 6\n",
"95.0 6\n",
"200.0 4\n",
"158.0 4\n",
"178.0 3\n",
"146.0 3\n",
"106.0 3\n",
"104.0 3\n",
"154.0 3\n",
"102.0 3\n",
"156.0 2\n",
"114.0 2\n",
"190.0 2\n",
"116.0 2\n",
"165.0 2\n",
"94.0 2\n",
"148.0 2\n",
"172.0 2\n",
"113.0 1\n",
"96.0 1\n",
"185.0 1\n",
"80.0 1\n",
"117.0 1\n",
"92.0 1\n",
"123.0 1\n",
"129.0 1\n",
"98.0 1\n",
"164.0 1\n",
"101.0 1\n",
"174.0 1\n",
"192.0 1\n",
"127.0 1\n",
"Name: trestbps, dtype: int64\n",
"239.5 202\n",
"254.0 10\n",
"220.0 10\n",
"230.0 9\n",
"216.0 9\n",
" ... \n",
"412.0 1\n",
"358.0 1\n",
"360.0 1\n",
"321.0 1\n",
"385.0 1\n",
"Name: chol, Length: 217, dtype: int64\n",
"0 782\n",
"1 138\n",
"Name: fbs, dtype: int64\n",
"0 553\n",
"2 188\n",
"1 179\n",
"Name: restecg, dtype: int64\n",
"140.0 96\n",
"150.0 43\n",
"120.0 35\n",
"130.0 30\n",
"160.0 26\n",
" ..\n",
"195.0 1\n",
"91.0 1\n",
"87.0 1\n",
"192.0 1\n",
"73.0 1\n",
"Name: thalach, Length: 119, dtype: int64\n",
"0 583\n",
"1 337\n",
"Name: exang, dtype: int64\n",
" 0.0 370\n",
" 1.0 83\n",
" 0.5 81\n",
" 2.0 76\n",
" 1.5 48\n",
" 3.0 28\n",
" 1.2 17\n",
" 2.5 16\n",
" 1.4 15\n",
" 0.8 15\n",
" 1.6 14\n",
" 0.2 14\n",
" 0.6 14\n",
" 1.8 12\n",
" 0.4 10\n",
" 0.1 9\n",
" 4.0 8\n",
" 2.6 7\n",
" 2.8 7\n",
" 1.3 5\n",
" 2.2 5\n",
" 0.7 5\n",
" 1.9 5\n",
" 0.3 5\n",
" 3.6 4\n",
" 2.4 4\n",
" 1.1 4\n",
" 0.9 4\n",
" 3.4 3\n",
" 1.7 2\n",
"-1.0 2\n",
" 4.2 2\n",
" 2.3 2\n",
" 2.1 2\n",
"-0.5 2\n",
" 3.2 2\n",
" 3.5 2\n",
"-0.8 1\n",
"-0.1 1\n",
"-0.9 1\n",
"-2.0 1\n",
"-0.7 1\n",
"-2.6 1\n",
" 6.2 1\n",
"-1.5 1\n",
"-1.1 1\n",
" 5.0 1\n",
" 4.4 1\n",
" 3.8 1\n",
" 2.9 1\n",
" 5.6 1\n",
" 3.1 1\n",
" 3.7 1\n",
"Name: oldpeak, dtype: int64\n",
"2 654\n",
"1 203\n",
"3 63\n",
"Name: slope, dtype: int64\n",
"0.0 792\n",
"1.0 67\n",
"2.0 41\n",
"3.0 20\n",
"Name: ca, dtype: int64\n",
"3.0 682\n",
"7.0 192\n",
"6.0 46\n",
"Name: thal, dtype: int64\n",
"1 509\n",
"0 411\n",
"Name: num, dtype: int64\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"enc = OneHotEncoder(handle_unknown='ignore')\n",
"enc.fit(heart_disease_df[['cp', 'restecg', 'slope', 'thal']])"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 75
},
"id": "YQHl_m0XGBoJ",
"outputId": "1193e647-4cc3-475a-f90a-52a2fbe7ef63"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"OneHotEncoder(handle_unknown='ignore')"
],
"text/html": [
"OneHotEncoder(handle_unknown='ignore') In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
]
},
"metadata": {},
"execution_count": 83
}
]
},
{
"cell_type": "code",
"source": [
"enc.categories_"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "0DGmVl5KIlVP",
"outputId": "b74dabe6-f519-4152-9c75-e7d58246ba47"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"[array([1., 2., 3., 4.]),\n",
" array([0, 1, 2]),\n",
" array([1, 2, 3]),\n",
" array([3., 6., 7.])]"
]
},
"metadata": {},
"execution_count": 84
}
]
},
{
"cell_type": "code",
"source": [
"enc.transform(heart_disease_df[['cp', 'restecg', 'slope', 'thal']]).toarray()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "f30PZEXVI2Lc",
"outputId": "e0bc9346-dd76-4010-c6d6-970ad93e743d"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([[1., 0., 0., ..., 0., 1., 0.],\n",
" [0., 0., 0., ..., 1., 0., 0.],\n",
" [0., 0., 0., ..., 0., 0., 1.],\n",
" ...,\n",
" [0., 0., 0., ..., 0., 1., 0.],\n",
" [0., 0., 0., ..., 1., 0., 0.],\n",
" [0., 1., 0., ..., 1., 0., 0.]])"
]
},
"metadata": {},
"execution_count": 85
}
]
},
{
"cell_type": "code",
"source": [
"enc.get_feature_names_out(['cp', 'restecg', 'slope', 'thal'])"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "NPTXOBcqIpz9",
"outputId": "bcea7bc4-02a9-4c93-fc9d-6a7537e3517b"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array(['cp_1.0', 'cp_2.0', 'cp_3.0', 'cp_4.0', 'restecg_0', 'restecg_1',\n",
" 'restecg_2', 'slope_1', 'slope_2', 'slope_3', 'thal_3.0',\n",
" 'thal_6.0', 'thal_7.0'], dtype=object)"
]
},
"metadata": {},
"execution_count": 86
}
]
},
{
"cell_type": "code",
"source": [
"cat_feature_df = pd.DataFrame(data=enc.transform(heart_disease_df[['cp', 'restecg', 'slope', 'thal']]).toarray(), columns=enc.get_feature_names_out(['cp', 'restecg', 'slope', 'thal']))\n",
"cat_feature_df = pd.concat([heart_disease_df[['sex', 'fbs', 'exang']], cat_feature_df], axis=1)\n",
"print(cat_feature_df.shape)\n",
"cat_feature_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "-8lC9MlMIy0o",
"outputId": "85eadd55-b31f-4969-a478-28058f3fa9b2"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 16)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" sex fbs exang cp_1.0 cp_2.0 cp_3.0 cp_4.0 restecg_0 restecg_1 \\\n",
"0 1.0 1 0 1.0 0.0 0.0 0.0 0.0 0.0 \n",
"1 1.0 0 1 0.0 0.0 0.0 1.0 0.0 0.0 \n",
"2 1.0 0 1 0.0 0.0 0.0 1.0 0.0 0.0 \n",
"3 1.0 0 0 0.0 0.0 1.0 0.0 1.0 0.0 \n",
"4 0.0 0 0 0.0 1.0 0.0 0.0 0.0 0.0 \n",
"\n",
" restecg_2 slope_1 slope_2 slope_3 thal_3.0 thal_6.0 thal_7.0 \n",
"0 1.0 0.0 0.0 1.0 0.0 1.0 0.0 \n",
"1 1.0 0.0 1.0 0.0 1.0 0.0 0.0 \n",
"2 1.0 0.0 1.0 0.0 0.0 0.0 1.0 \n",
"3 0.0 0.0 0.0 1.0 1.0 0.0 0.0 \n",
"4 1.0 1.0 0.0 0.0 1.0 0.0 0.0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" sex \n",
" fbs \n",
" exang \n",
" cp_1.0 \n",
" cp_2.0 \n",
" cp_3.0 \n",
" cp_4.0 \n",
" restecg_0 \n",
" restecg_1 \n",
" restecg_2 \n",
" slope_1 \n",
" slope_2 \n",
" slope_3 \n",
" thal_3.0 \n",
" thal_6.0 \n",
" thal_7.0 \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 1.0 \n",
" 1 \n",
" 0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" \n",
" \n",
" 1 \n",
" 1.0 \n",
" 0 \n",
" 1 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" \n",
" \n",
" 2 \n",
" 1.0 \n",
" 0 \n",
" 1 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" \n",
" \n",
" 3 \n",
" 1.0 \n",
" 0 \n",
" 0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" \n",
" \n",
" 4 \n",
" 0.0 \n",
" 0 \n",
" 0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "cat_feature_df",
"summary": "{\n \"name\": \"cat_feature_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"sex\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4081478432714873,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"fbs\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 0,\n 1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"exang\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp_1.0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.21806349216658624,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp_2.0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.39182520412197797,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp_3.0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4156424781365013,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"cp_4.0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4987375840511583,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg_0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.48994116260137216,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg_1\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.39608094556212203,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"restecg_2\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.40344356780107027,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope_1\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.41491193487995,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope_2\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.45360519850744346,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"slope_3\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.2527021961957428,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal_3.0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.43815623537382486,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal_6.0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.21806349216658624,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 0.0,\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thal_7.0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4065974350536103,\n \"min\": 0.0,\n \"max\": 1.0,\n \"num_unique_values\": 2,\n \"samples\": [\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 87
}
]
},
{
"cell_type": "code",
"source": [
"num_feature_df = heart_disease_df.loc[:, heart_disease_df.columns.isin(['age', 'trestbps', 'chol', 'thalach', 'oldpeak', 'ca'])]\n",
"print(num_feature_df.shape)\n",
"num_feature_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 224
},
"id": "Y3mzqw-GJD4p",
"outputId": "9e182ec5-d8d3-46b1-c8fc-767bed67371c"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 6)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" age trestbps chol thalach oldpeak ca\n",
"0 63.0 145.0 233.0 150.0 2.3 0.0\n",
"1 67.0 160.0 286.0 108.0 1.5 3.0\n",
"2 67.0 120.0 229.0 129.0 2.6 2.0\n",
"3 37.0 130.0 250.0 187.0 3.5 0.0\n",
"4 41.0 130.0 204.0 172.0 1.4 0.0"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" age \n",
" trestbps \n",
" chol \n",
" thalach \n",
" oldpeak \n",
" ca \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 63.0 \n",
" 145.0 \n",
" 233.0 \n",
" 150.0 \n",
" 2.3 \n",
" 0.0 \n",
" \n",
" \n",
" 1 \n",
" 67.0 \n",
" 160.0 \n",
" 286.0 \n",
" 108.0 \n",
" 1.5 \n",
" 3.0 \n",
" \n",
" \n",
" 2 \n",
" 67.0 \n",
" 120.0 \n",
" 229.0 \n",
" 129.0 \n",
" 2.6 \n",
" 2.0 \n",
" \n",
" \n",
" 3 \n",
" 37.0 \n",
" 130.0 \n",
" 250.0 \n",
" 187.0 \n",
" 3.5 \n",
" 0.0 \n",
" \n",
" \n",
" 4 \n",
" 41.0 \n",
" 130.0 \n",
" 204.0 \n",
" 172.0 \n",
" 1.4 \n",
" 0.0 \n",
" \n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "num_feature_df",
"summary": "{\n \"name\": \"num_feature_df\",\n \"rows\": 920,\n \"fields\": [\n {\n \"column\": \"age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9.424685209576857,\n \"min\": 28.0,\n \"max\": 77.0,\n \"num_unique_values\": 50,\n \"samples\": [\n 64.0,\n 74.0,\n 39.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"trestbps\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 17.929760898407423,\n \"min\": 80.0,\n \"max\": 200.0,\n \"num_unique_values\": 60,\n \"samples\": [\n 145.0,\n 172.0,\n 148.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"chol\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 51.78532758464655,\n \"min\": 85.0,\n \"max\": 603.0,\n \"num_unique_values\": 217,\n \"samples\": [\n 384.0,\n 333.0,\n 218.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"thalach\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.145235299317264,\n \"min\": 60.0,\n \"max\": 202.0,\n \"num_unique_values\": 119,\n \"samples\": [\n 185.0,\n 134.0,\n 172.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"oldpeak\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.0580486984557573,\n \"min\": -2.6,\n \"max\": 6.2,\n \"num_unique_values\": 53,\n \"samples\": [\n 2.4,\n -1.1,\n -1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ca\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.628936484381527,\n \"min\": 0.0,\n \"max\": 3.0,\n \"num_unique_values\": 4,\n \"samples\": [\n 3.0,\n 1.0,\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 88
}
]
},
{
"cell_type": "code",
"source": [
"feature_df = pd.concat([num_feature_df, cat_feature_df], axis=1)\n",
"print(feature_df.shape)\n",
"feature_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 254
},
"id": "sGklvqGANzQL",
"outputId": "ad444348-3913-44b9-dd8f-48d8c6034299"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"(920, 22)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" age trestbps chol thalach oldpeak ca sex fbs exang cp_1.0 ... \\\n",
"0 63.0 145.0 233.0 150.0 2.3 0.0 1.0 1 0 1.0 ... \n",
"1 67.0 160.0 286.0 108.0 1.5 3.0 1.0 0 1 0.0 ... \n",
"2 67.0 120.0 229.0 129.0 2.6 2.0 1.0 0 1 0.0 ... \n",
"3 37.0 130.0 250.0 187.0 3.5 0.0 1.0 0 0 0.0 ... \n",
"4 41.0 130.0 204.0 172.0 1.4 0.0 0.0 0 0 0.0 ... \n",
"\n",
" cp_4.0 restecg_0 restecg_1 restecg_2 slope_1 slope_2 slope_3 \\\n",
"0 0.0 0.0 0.0 1.0 0.0 0.0 1.0 \n",
"1 1.0 0.0 0.0 1.0 0.0 1.0 0.0 \n",
"2 1.0 0.0 0.0 1.0 0.0 1.0 0.0 \n",
"3 0.0 1.0 0.0 0.0 0.0 0.0 1.0 \n",
"4 0.0 0.0 0.0 1.0 1.0 0.0 0.0 \n",
"\n",
" thal_3.0 thal_6.0 thal_7.0 \n",
"0 0.0 1.0 0.0 \n",
"1 1.0 0.0 0.0 \n",
"2 0.0 0.0 1.0 \n",
"3 1.0 0.0 0.0 \n",
"4 1.0 0.0 0.0 \n",
"\n",
"[5 rows x 22 columns]"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" age \n",
" trestbps \n",
" chol \n",
" thalach \n",
" oldpeak \n",
" ca \n",
" sex \n",
" fbs \n",
" exang \n",
" cp_1.0 \n",
" ... \n",
" cp_4.0 \n",
" restecg_0 \n",
" restecg_1 \n",
" restecg_2 \n",
" slope_1 \n",
" slope_2 \n",
" slope_3 \n",
" thal_3.0 \n",
" thal_6.0 \n",
" thal_7.0 \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 63.0 \n",
" 145.0 \n",
" 233.0 \n",
" 150.0 \n",
" 2.3 \n",
" 0.0 \n",
" 1.0 \n",
" 1 \n",
" 0 \n",
" 1.0 \n",
" ... \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" \n",
" \n",
" 1 \n",
" 67.0 \n",
" 160.0 \n",
" 286.0 \n",
" 108.0 \n",
" 1.5 \n",
" 3.0 \n",
" 1.0 \n",
" 0 \n",
" 1 \n",
" 0.0 \n",
" ... \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" \n",
" \n",
" 2 \n",
" 67.0 \n",
" 120.0 \n",
" 229.0 \n",
" 129.0 \n",
" 2.6 \n",
" 2.0 \n",
" 1.0 \n",
" 0 \n",
" 1 \n",
" 0.0 \n",
" ... \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" \n",
" \n",
" 3 \n",
" 37.0 \n",
" 130.0 \n",
" 250.0 \n",
" 187.0 \n",
" 3.5 \n",
" 0.0 \n",
" 1.0 \n",
" 0 \n",
" 0 \n",
" 0.0 \n",
" ... \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" \n",
" \n",
" 4 \n",
" 41.0 \n",
" 130.0 \n",
" 204.0 \n",
" 172.0 \n",
" 1.4 \n",
" 0.0 \n",
" 0.0 \n",
" 0 \n",
" 0 \n",
" 0.0 \n",
" ... \n",
" 0.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" 1.0 \n",
" 0.0 \n",
" 0.0 \n",
" \n",
" \n",
"
\n",
"
5 rows × 22 columns
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "feature_df"
}
},
"metadata": {},
"execution_count": 89
}
]
},
{
"cell_type": "code",
"source": [
"feature_df.columns"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "21VhLjlSN8cj",
"outputId": "b88b019b-1700-4bd6-e65e-a4e9fbcf68dd"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"Index(['age', 'trestbps', 'chol', 'thalach', 'oldpeak', 'ca', 'sex', 'fbs',\n",
" 'exang', 'cp_1.0', 'cp_2.0', 'cp_3.0', 'cp_4.0', 'restecg_0',\n",
" 'restecg_1', 'restecg_2', 'slope_1', 'slope_2', 'slope_3', 'thal_3.0',\n",
" 'thal_6.0', 'thal_7.0'],\n",
" dtype='object')"
]
},
"metadata": {},
"execution_count": 90
}
]
},
{
"cell_type": "code",
"source": [
"feature_df.to_csv('heart_disease_feature.csv', index=False)"
],
"metadata": {
"id": "y9etp8hrN_X1"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [],
"metadata": {
"id": "h4jWk9QsPDB9"
},
"execution_count": null,
"outputs": []
}
]
}