Machine Learning Kurs im Rahmen der Studierendentage im SS 2023
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

559 lines
221 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. {
  2. "cells": [
  3. {
  4. "cell_type": "markdown",
  5. "metadata": {},
  6. "source": [
  7. "Exercise 2: Example for pandas using the heart.csv data set"
  8. ]
  9. },
  10. {
  11. "cell_type": "code",
  12. "execution_count": 1,
  13. "metadata": {},
  14. "outputs": [],
  15. "source": [
  16. "import numpy as np\n",
  17. "import pandas as pd\n",
  18. "import matplotlib.pyplot as plt"
  19. ]
  20. },
  21. {
  22. "cell_type": "code",
  23. "execution_count": 2,
  24. "metadata": {},
  25. "outputs": [],
  26. "source": [
  27. "# read the csv Data \n",
  28. "df = pd.read_csv('heart.csv')"
  29. ]
  30. },
  31. {
  32. "cell_type": "code",
  33. "execution_count": 3,
  34. "metadata": {},
  35. "outputs": [
  36. {
  37. "name": "stdout",
  38. "output_type": "stream",
  39. "text": [
  40. "Index(['age', 'sex', 'cp', 'trestbps', 'chol', 'fbs', 'restecg', 'thalach',\n",
  41. " 'exang', 'oldpeak', 'slope', 'ca', 'thal', 'target'],\n",
  42. " dtype='object')\n",
  43. "<class 'pandas.core.frame.DataFrame'>\n",
  44. "RangeIndex: 303 entries, 0 to 302\n",
  45. "Data columns (total 14 columns):\n",
  46. " # Column Non-Null Count Dtype \n",
  47. "--- ------ -------------- ----- \n",
  48. " 0 age 303 non-null int64 \n",
  49. " 1 sex 303 non-null int64 \n",
  50. " 2 cp 303 non-null int64 \n",
  51. " 3 trestbps 303 non-null int64 \n",
  52. " 4 chol 303 non-null int64 \n",
  53. " 5 fbs 303 non-null int64 \n",
  54. " 6 restecg 303 non-null int64 \n",
  55. " 7 thalach 303 non-null int64 \n",
  56. " 8 exang 303 non-null int64 \n",
  57. " 9 oldpeak 303 non-null float64\n",
  58. " 10 slope 303 non-null int64 \n",
  59. " 11 ca 303 non-null int64 \n",
  60. " 12 thal 303 non-null int64 \n",
  61. " 13 target 303 non-null int64 \n",
  62. "dtypes: float64(1), int64(13)\n",
  63. "memory usage: 33.3 KB\n",
  64. "None\n",
  65. "age int64\n",
  66. "sex int64\n",
  67. "cp int64\n",
  68. "trestbps int64\n",
  69. "chol int64\n",
  70. "fbs int64\n",
  71. "restecg int64\n",
  72. "thalach int64\n",
  73. "exang int64\n",
  74. "oldpeak float64\n",
  75. "slope int64\n",
  76. "ca int64\n",
  77. "thal int64\n",
  78. "target int64\n",
  79. "dtype: object\n"
  80. ]
  81. }
  82. ],
  83. "source": [
  84. "# What is the number of columns and rows\n",
  85. "print(df.columns)\n",
  86. "print (df.info())\n",
  87. "print(df.dtypes)"
  88. ]
  89. },
  90. {
  91. "cell_type": "code",
  92. "execution_count": 4,
  93. "metadata": {},
  94. "outputs": [
  95. {
  96. "name": "stdout",
  97. "output_type": "stream",
  98. "text": [
  99. " age sex cp trestbps chol fbs restecg thalach exang oldpeak slope \\\n",
  100. "0 63 1 3 145 233 1 0 150 0 2.3 0 \n",
  101. "1 37 1 2 130 250 0 1 187 0 3.5 0 \n",
  102. "2 41 0 1 130 204 0 0 172 0 1.4 2 \n",
  103. "\n",
  104. " ca thal target \n",
  105. "0 0 1 1 \n",
  106. "1 0 2 1 \n",
  107. "2 0 2 1 \n"
  108. ]
  109. }
  110. ],
  111. "source": [
  112. "# get first 3 lines\n",
  113. "print(df.head(3))"
  114. ]
  115. },
  116. {
  117. "cell_type": "code",
  118. "execution_count": 5,
  119. "metadata": {},
  120. "outputs": [
  121. {
  122. "name": "stdout",
  123. "output_type": "stream",
  124. "text": [
  125. " age sex cp trestbps chol fbs \\\n",
  126. "count 303.000000 303.000000 303.000000 303.000000 303.000000 303.000000 \n",
  127. "mean 54.366337 0.683168 0.966997 131.623762 246.264026 0.148515 \n",
  128. "std 9.082101 0.466011 1.032052 17.538143 51.830751 0.356198 \n",
  129. "min 29.000000 0.000000 0.000000 94.000000 126.000000 0.000000 \n",
  130. "25% 47.500000 0.000000 0.000000 120.000000 211.000000 0.000000 \n",
  131. "50% 55.000000 1.000000 1.000000 130.000000 240.000000 0.000000 \n",
  132. "75% 61.000000 1.000000 2.000000 140.000000 274.500000 0.000000 \n",
  133. "max 77.000000 1.000000 3.000000 200.000000 564.000000 1.000000 \n",
  134. "\n",
  135. " restecg thalach exang oldpeak slope ca \\\n",
  136. "count 303.000000 303.000000 303.000000 303.000000 303.000000 303.000000 \n",
  137. "mean 0.528053 149.646865 0.326733 1.039604 1.399340 0.729373 \n",
  138. "std 0.525860 22.905161 0.469794 1.161075 0.616226 1.022606 \n",
  139. "min 0.000000 71.000000 0.000000 0.000000 0.000000 0.000000 \n",
  140. "25% 0.000000 133.500000 0.000000 0.000000 1.000000 0.000000 \n",
  141. "50% 1.000000 153.000000 0.000000 0.800000 1.000000 0.000000 \n",
  142. "75% 1.000000 166.000000 1.000000 1.600000 2.000000 1.000000 \n",
  143. "max 2.000000 202.000000 1.000000 6.200000 2.000000 4.000000 \n",
  144. "\n",
  145. " thal target \n",
  146. "count 303.000000 303.000000 \n",
  147. "mean 2.313531 0.544554 \n",
  148. "std 0.612277 0.498835 \n",
  149. "min 0.000000 0.000000 \n",
  150. "25% 2.000000 0.000000 \n",
  151. "50% 2.000000 1.000000 \n",
  152. "75% 3.000000 1.000000 \n",
  153. "max 3.000000 1.000000 \n"
  154. ]
  155. }
  156. ],
  157. "source": [
  158. "#display statistics summary\n",
  159. "print(df.describe())"
  160. ]
  161. },
  162. {
  163. "cell_type": "code",
  164. "execution_count": 6,
  165. "metadata": {},
  166. "outputs": [
  167. {
  168. "name": "stdout",
  169. "output_type": "stream",
  170. "text": [
  171. " age sex cp trestbps chol fbs \\\n",
  172. "age 1.000000 -0.098447 -0.068653 0.279351 0.213678 0.121308 \n",
  173. "sex -0.098447 1.000000 -0.049353 -0.056769 -0.197912 0.045032 \n",
  174. "cp -0.068653 -0.049353 1.000000 0.047608 -0.076904 0.094444 \n",
  175. "trestbps 0.279351 -0.056769 0.047608 1.000000 0.123174 0.177531 \n",
  176. "chol 0.213678 -0.197912 -0.076904 0.123174 1.000000 0.013294 \n",
  177. "fbs 0.121308 0.045032 0.094444 0.177531 0.013294 1.000000 \n",
  178. "restecg -0.116211 -0.058196 0.044421 -0.114103 -0.151040 -0.084189 \n",
  179. "thalach -0.398522 -0.044020 0.295762 -0.046698 -0.009940 -0.008567 \n",
  180. "exang 0.096801 0.141664 -0.394280 0.067616 0.067023 0.025665 \n",
  181. "oldpeak 0.210013 0.096093 -0.149230 0.193216 0.053952 0.005747 \n",
  182. "slope -0.168814 -0.030711 0.119717 -0.121475 -0.004038 -0.059894 \n",
  183. "ca 0.276326 0.118261 -0.181053 0.101389 0.070511 0.137979 \n",
  184. "thal 0.068001 0.210041 -0.161736 0.062210 0.098803 -0.032019 \n",
  185. "target -0.225439 -0.280937 0.433798 -0.144931 -0.085239 -0.028046 \n",
  186. "\n",
  187. " restecg thalach exang oldpeak slope ca \\\n",
  188. "age -0.116211 -0.398522 0.096801 0.210013 -0.168814 0.276326 \n",
  189. "sex -0.058196 -0.044020 0.141664 0.096093 -0.030711 0.118261 \n",
  190. "cp 0.044421 0.295762 -0.394280 -0.149230 0.119717 -0.181053 \n",
  191. "trestbps -0.114103 -0.046698 0.067616 0.193216 -0.121475 0.101389 \n",
  192. "chol -0.151040 -0.009940 0.067023 0.053952 -0.004038 0.070511 \n",
  193. "fbs -0.084189 -0.008567 0.025665 0.005747 -0.059894 0.137979 \n",
  194. "restecg 1.000000 0.044123 -0.070733 -0.058770 0.093045 -0.072042 \n",
  195. "thalach 0.044123 1.000000 -0.378812 -0.344187 0.386784 -0.213177 \n",
  196. "exang -0.070733 -0.378812 1.000000 0.288223 -0.257748 0.115739 \n",
  197. "oldpeak -0.058770 -0.344187 0.288223 1.000000 -0.577537 0.222682 \n",
  198. "slope 0.093045 0.386784 -0.257748 -0.577537 1.000000 -0.080155 \n",
  199. "ca -0.072042 -0.213177 0.115739 0.222682 -0.080155 1.000000 \n",
  200. "thal -0.011981 -0.096439 0.206754 0.210244 -0.104764 0.151832 \n",
  201. "target 0.137230 0.421741 -0.436757 -0.430696 0.345877 -0.391724 \n",
  202. "\n",
  203. " thal target \n",
  204. "age 0.068001 -0.225439 \n",
  205. "sex 0.210041 -0.280937 \n",
  206. "cp -0.161736 0.433798 \n",
  207. "trestbps 0.062210 -0.144931 \n",
  208. "chol 0.098803 -0.085239 \n",
  209. "fbs -0.032019 -0.028046 \n",
  210. "restecg -0.011981 0.137230 \n",
  211. "thalach -0.096439 0.421741 \n",
  212. "exang 0.206754 -0.436757 \n",
  213. "oldpeak 0.210244 -0.430696 \n",
  214. "slope -0.104764 0.345877 \n",
  215. "ca 0.151832 -0.391724 \n",
  216. "thal 1.000000 -0.344029 \n",
  217. "target -0.344029 1.000000 \n"
  218. ]
  219. }
  220. ],
  221. "source": [
  222. "#display correlation\n",
  223. "print (df.corr())"
  224. ]
  225. },
  226. {
  227. "cell_type": "code",
  228. "execution_count": 7,
  229. "metadata": {},
  230. "outputs": [
  231. {
  232. "name": "stdout",
  233. "output_type": "stream",
  234. "text": [
  235. " age sex cp trestbps chol fbs \\\n",
  236. "target \n",
  237. "0 56.601449 0.826087 0.478261 134.398551 251.086957 0.159420 \n",
  238. "1 52.496970 0.563636 1.375758 129.303030 242.230303 0.139394 \n",
  239. "\n",
  240. " restecg thalach exang oldpeak slope ca thal \n",
  241. "target \n",
  242. "0 0.449275 139.101449 0.550725 1.585507 1.166667 1.166667 2.543478 \n",
  243. "1 0.593939 158.466667 0.139394 0.583030 1.593939 0.363636 2.121212 \n"
  244. ]
  245. }
  246. ],
  247. "source": [
  248. "# Print mean values for each column with and without disease\n",
  249. "print(df.groupby('target').mean())"
  250. ]
  251. },
  252. {
  253. "cell_type": "code",
  254. "execution_count": 8,
  255. "metadata": {},
  256. "outputs": [
  257. {
  258. "name": "stdout",
  259. "output_type": "stream",
  260. "text": [
  261. " age sex cp trestbps chol fbs restecg thalach exang oldpeak \\\n",
  262. "167 62 0 0 140 268 0 0 160 0 3.6 \n",
  263. "181 65 0 0 150 225 0 0 114 0 1.0 \n",
  264. "182 61 0 0 130 330 0 0 169 0 0.0 \n",
  265. "190 51 0 0 130 305 0 1 142 1 1.2 \n",
  266. "204 62 0 0 160 164 0 0 145 0 6.2 \n",
  267. "\n",
  268. " slope ca thal target \n",
  269. "167 0 2 2 0 \n",
  270. "181 1 3 3 0 \n",
  271. "182 2 0 2 0 \n",
  272. "190 1 0 3 0 \n",
  273. "204 0 3 3 0 \n"
  274. ]
  275. }
  276. ],
  277. "source": [
  278. "# get table with selection on more than 1 column\n",
  279. "df1 = df[(df[\"sex\"] == 0) & (df[\"target\"] == 0) ]\n",
  280. "print (df1.head(5))"
  281. ]
  282. },
  283. {
  284. "cell_type": "markdown",
  285. "metadata": {},
  286. "source": [
  287. " Plots"
  288. ]
  289. },
  290. {
  291. "cell_type": "code",
  292. "execution_count": 9,
  293. "metadata": {},
  294. "outputs": [
  295. {
  296. "name": "stdout",
  297. "output_type": "stream",
  298. "text": [
  299. "0 63\n",
  300. "1 37\n",
  301. "3 56\n",
  302. "5 57\n",
  303. "7 44\n",
  304. " ..\n",
  305. "295 63\n",
  306. "297 59\n",
  307. "299 45\n",
  308. "300 68\n",
  309. "301 57\n",
  310. "Name: age, Length: 207, dtype: int64\n"
  311. ]
  312. },
  313. {
  314. "data": {
  315. "text/plain": [
  316. "<matplotlib.legend.Legend at 0x7fae906dafa0>"
  317. ]
  318. },
  319. "execution_count": 9,
  320. "metadata": {},
  321. "output_type": "execute_result"
  322. },
  323. {
  324. "data": {
  325. "image/png": "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4cIFRUZG6tixY47nLD4+Xm+++ab27t2rL7/8UjabTdOmTdP27dvVuXNn7dy503H+LVu2aO3atTkGJ9xBDGAhV65cMZcuXTLh4eFmyJAhjvZXX33V2Gw2Ex8f79S/devWRpLZvHmzMcaYtLQ0U6ZMGdO+fXunflevXjV169Y1f/nLX254/eHDhxubzWZ2797t1N6yZUun6xhjTI8ePUylSpUc2//4xz+MJHPmzJkczx8XF2ckmZiYmCz7evToYSSZDz74INt9f76WMcZIMp6eniY5OdnRduXKFVO9enVTpUoVR9uYMWNMdv8UxMTEGEnm0KFDjrZatWqZyMjILH0PHTqUpe4HH3zQBAQEmNTUVKfrR0REmAoVKpiMjAyn6wwYMMDpnJMnTzaSTFJSUpbr3ciVK1fM+fPnTcmSJc306dMd7b179zbu7u4mISEhx2PfeustI8ls2LAhxz7vvfeekWSWLVvm1D5p0iQjyaxfv97RJsn4+fmZU6dOOfXt0qVLjs/N9WMeGRnpNOaZY127dm1z5coVR/t3331nJJklS5YYY679TgcFBZmGDRs6XfvIkSPG3d09y+9LdnJ6vl9//XUjyWzfvt2p/cUXXzQ2m83s27fvhuddvXq1KVu2rJFkJBl/f3/z9NNPm1WrVjn1mzBhgilWrJiJi4tzal++fLmRZP7zn/842vbv3298fX1Nx44dzZdffmmKFStmRo0addPHiDsDt5lQpF25ckXjx49XzZo15eHhITc3N3l4eGj//v366aefHP1iY2MVERGRZX1B165dnba3bt2qU6dOqUePHrpy5YrjJyMjQ4899pji4uKcpq+vt3nzZtWqVUt169Z1au/WrdtNH0vmLaTOnTtr2bJlOn78+E2Pyc6TTz6Z676Z0+yZihcvri5duuiXX37RsWPH8nX93EhLS9P27dv11FNPydvb2+n63bt317Fjx7Rv3z6nY/761786bdepU0eSsr1d9Gfnz5/X8OHDVaVKFbm5ucnNzU3e3t5KS0tz+h1Zs2aNmjdvrho1auR4rjVr1qhq1ap69NFHc+yzadMmlSxZMsvMVs+ePSUpy+3KRx55RKVLl3Zq27x5c47PTW61a9dOxYsXd2xfP1779u1TcnKyOnfu7HTcPffcoyZNmuT6OtnZtGmTatasqb/85S9O7T179pQx5qazaW3btlViYqJWrFihYcOGqVatWlq5cqX++te/Os1yfvHFF4qIiFC9evWc/l5bt26d5fZxlSpVNHfuXK1cuVKPP/64HnroIcctWtz5CDMo0oYOHarRo0erY8eO+vzzz7V9+3bFxcWpbt26+uOPPxz9Tp486fTCkOn6tsy1EU899ZTc3d2dfiZNmiRjjE6dOpVjPSdPnlRQUFCW9uzarvfwww9r5cqVunLlip5//nlVqFBBERERWrJkyU2PzeTl5SVfX99c979RrZlrFwrD6dOnZYzJdno/JCQk2+v7+/s7bWfe0vjz85ydbt26acaMGerbt6/WrVun7777TnFxcSpXrpzTsb/99pvTLbvs5KZP5u/A9euMAgIC5ObmluVxZTcGt/J7lOlm45VZR27+LvLq5MmTeXpus+Pp6amOHTtqypQpio2N1S+//KKaNWvq3//+t+Lj4yVd+3vds2dPlr9VHx8fGWP0+++/O52zXbt
  326. "text/plain": [
  327. "<Figure size 640x480 with 1 Axes>"
  328. ]
  329. },
  330. "metadata": {},
  331. "output_type": "display_data"
  332. }
  333. ],
  334. "source": [
  335. "# age dirtibution group into male and female (1 = male; 0 = female)\n",
  336. "# male\n",
  337. "plt.title('age distribution according to Sex') \n",
  338. "df[df[\"sex\"] == 1]['age'].plot.hist()\n",
  339. "print(df[df[\"sex\"] > 0]['age'])\n",
  340. "# female\n",
  341. "df[df[\"sex\"] == 0]['age'].plot.hist()\n",
  342. "plt.xlabel('age [years]')\n",
  343. "plt.legend([\"male\", \"female\"])"
  344. ]
  345. },
  346. {
  347. "cell_type": "code",
  348. "execution_count": 10,
  349. "metadata": {},
  350. "outputs": [
  351. {
  352. "data": {
  353. "text/plain": [
  354. "Text(0.5, 0, 'max heart rate')"
  355. ]
  356. },
  357. "execution_count": 10,
  358. "metadata": {},
  359. "output_type": "execute_result"
  360. },
  361. {
  362. "data": {
  363. "image/png": "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
  364. "text/plain": [
  365. "<Figure size 640x480 with 1 Axes>"
  366. ]
  367. },
  368. "metadata": {},
  369. "output_type": "display_data"
  370. }
  371. ],
  372. "source": [
  373. "plt.figure()\n",
  374. "# Plot maximum heart rate\n",
  375. "# Heart disease (0 = no, 1 = yes)\n",
  376. "plt.title('maximum heart rate according to heart disease') \n",
  377. "df[df[\"target\"] == 1]['thalach'].plot.hist()\n",
  378. "# no disease\n",
  379. "df[df[\"target\"] == 0]['thalach'].plot.hist()\n",
  380. "plt.legend([\"disease\", \"no disease\"])\n",
  381. "plt.xlabel('max heart rate')"
  382. ]
  383. },
  384. {
  385. "cell_type": "code",
  386. "execution_count": 11,
  387. "metadata": {
  388. "scrolled": true
  389. },
  390. "outputs": [
  391. {
  392. "data": {
  393. "text/plain": [
  394. "<matplotlib.legend.Legend at 0x7fae884d8e80>"
  395. ]
  396. },
  397. "execution_count": 11,
  398. "metadata": {},
  399. "output_type": "execute_result"
  400. },
  401. {
  402. "data": {
  403. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAHACAYAAACI8pP3AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAABH70lEQVR4nO3dd3QU5f7H8c8mpFeIpGmoUqWDIlFMFAjSsYGAIFUwKAIiykUhKBKJgl5BxEaxAHotiPeCEgXpHUGaIBAglBgpJhBCAsnz+8OT/blpgAYySd6vc+Yc9plnZr4zs5P9MDM7azPGGAEAAFiIU3EXAAAAkBsBBQAAWA4BBQAAWA4BBQAAWA4BBQAAWA4BBQAAWA4BBQAAWA4BBQAAWA4BBQAAWA4BpZSYM2eObDabNm/enO/4jh07qkqVKte3qL9YvHixYmJirrh/3759ZbPZ7IOXl5eqVKmizp07a/bs2crIyMgzTWRkpCIjI4uu6BKmb9++efaxzWa7qu0uXf2+KmhZl3tP/h3Hjx9XTEyMtm3blmdcTEyMbDZbkS2rrMp9HB06dEg2m01z5sy57rUUtr//qcTEREVHR6tmzZry8PBQhQoVVL9+fQ0aNEiJiYlFvjxcvXLFXQDKhsWLF+utt966qg8+Dw8PLVu2TJKUnp6uxMRELVmyRIMGDdKUKVP07bff6qabbrL3nzFjRlGXXeKtW7fOYRtdib+zr/7usq7W8ePHNWHCBFWpUkWNGjVyGDdw4EDde++913T5ZVFISIjWrVun6tWrX/dlF7a//4mjR4+qSZMm8vf319NPP61atWopJSVFu3fv1meffaaDBw8qLCysyJaHv4eAgmvq/Pnz8vT0/FvTOjk56fbbb3do69Onj/r166eOHTvqwQcf1Pr16+3j6tat+49qLY1yb7+iZozRhQsX5OHhcc2XdTk33XTTNQ9IpUF6errc3d2v+GyTm5tbse/bovbee+/p5MmT2rhxo6pWrWpv79q1q/71r38pOzu7GKtDDi7xlGHGGM2YMUONGjWSh4eHypcvrwcffFAHDx506BcfH68uXbropptukru7u26++WYNHjxYJ0+edOiXc4p969atevDBB1W+fHlVr15dffv21VtvvSVJDpdtDh069LfqjoqK0qBBg7RhwwatXLnS3p7fJZ63335bDRs2lLe3t3x8fFS7dm3961//cuiTlJSkwYMH66abbpKrq6uqVq2qCRMm6NKlSw79JkyYoObNm6tChQry9fVVkyZN9MEHHyj3720uW7ZMkZGRCggIkIeHhypVqqQHHnhA58+ft/fJzMzUxIkTVbt2bbm5ualixYrq16+ffv/99yvaBnPmzFGtWrXk5uamOnXq6MMPP8y3X+7LLufPn9eoUaNUtWpVubu7q0KFCmrWrJnmz58vSZfdVzabTU888YRmzpypOnXqyM3NTXPnzs13WTnOnDmjfv36qUKFCvLy8lKnTp3yvMeqVKmivn375pn2r/v0xx9/1K233ipJ6tevn722nGXmd4knOztbcXFx9u0cGBioPn366OjRo3mWU69ePW3atEktW7aUp6enqlWrpldeeeWKPqzeeust3XXXXQoMDJSXl5fq16+vuLg4Xbx4MU/fb7/9Vq1atZKfn588PT1Vp04dxcbGOvTZsGGDOnXqpICAALm7u6t69eoaPny4Q5/Vq1erVatW8vHxkaenp8LDw/W///3PoU/OZbalS5eqf//+qlixojw9PZWRkSFjjOLi4lS5cmW5u7urSZMmWrJkSZ5687vEk7Otd+3apR49esjPz09BQUHq37+/UlJSHKb/448/NGDAAFWoUEHe3t7q0KGDDh48eNnLj5fb35K0aNEitWjRQp6envLx8VGbNm20bt26AueZ49SpU3JyclJgYGC+452cHD8aN2/erM6dO6tChQpyd3dX48aN9dlnn9nHnzx5UmFhYQoPD3fY57t375aXl5d69+592ZqQF2dQSpmsrKw8H6yS8nyIStLgwYM1Z84cDRs2TJMnT9bp06f14osvKjw8XNu3b1dQUJAk6cCBA2rRooUGDhwoPz8/HTp0SFOnTtWdd96pHTt2yMXFxWG+999/vx5++GENGTJEaWlpqlevntLS0vT55587/PEICQn52+vZuXNnzZgxQytXrtRdd92Vb58FCxYoOjpaTz75pF577TU5OTlp//792r17t71PUlKSbrvtNjk5OWncuHGqXr261q1bp4kTJ+rQoUOaPXu2ve+hQ4c0ePBgVapUSZK0fv16Pfnkkzp27JjGjRtn79OhQwe1bNlSs2bNkr+/v44dO6Zvv/1WmZmZ8vT0VHZ2trp06aJVq1Zp9OjRCg8P1+HDhzV+/HhFRkZq8+bN8vDwKHDd58yZo379+qlLly6aMmWKUlJSFBMTo4yMjDx/WHMbOXKkPvroI02cOFGNGzdWWlqadu7cqVOnTkmSXnjhhcvuq4ULF2rVqlUaN26cgoODC/wjn2PAgAFq06aN5s2bp8TERD3//POKjIzUzz//LH9//0Kn/asmTZpo9uzZ6tevn55//nl16NBBkgo9a/L444/r3Xff1RNPPKGOHTvq0KFDeuGFF/Tjjz9q69atuuGGG+x9k5KS1KtXLz399NMaP368vvrqK40ZM0ahoaHq06dPobUdOHBAPXv2VNWqVeXq6qrt27fr5Zdf1i+//KJZs2bZ+33wwQcaNGiQIiIiNHPmTAUGBmrfvn3auXOnvc93332nTp06qU6dOpo6daoqVaqkQ4cOaenSpfY+K1asUJs2bdSgQQN98MEHcnNz04wZM9SpUyfNnz9f3bt3d6ivf//+6tChgz766COlpaXJxcVFEyZM0IQJEzRgwAA9+OCDSkxM1KBBg5SVlaVatWpd0T554IEH1L17dw0YMEA7duzQmDFjJMm+ztnZ2erUqZM2b96smJgYNWnSROvWrbuiS3GX29/z5s1Tr169FBUVpfnz5ysjI0NxcXGKjIzUDz/8oDvvvLPAebdo0UJvvfWW7r//fo0cOVItWrSQr69vvn2XL1+ue++9V82bN9fMmTPl5+enBQsWqHv37jp//rz69u2rG264QQsWLFBkZKSeffZZTZ06VefPn9dDDz2kSpUqaebMmVe0PZGLQakwe/ZsI6nQoXLlyvb+69atM5LMlClTHOaTmJhoPDw8zOjRo/NdTnZ2trl48aI5fPiwkWS+/vpr+7jx48cbSWbcuHF5phs6dKi5mrfbo48+ary8vAocv2fPHiPJPP744/a2iIgIExERYX/9xBNPGH9//0KXM3jwYOPt7W0OHz7s0P7aa68ZSWbXrl35TpeVlWUuXrxoXnzxRRMQEGCys7ONMcZ8/vnnRpLZtm1bgcucP3++kWS++OILh/ZNmzYZSWbGjBkFTpuVlWVCQ0NNkyZN7Ms0xphDhw4ZFxcXh31sjDGSzPjx4+2v69WrZ7p27Vrg/I0pfF9JMn5+fub06dP5jvvrsnLek/fdd59DvzVr1hhJZuLEifa2ypUrm0cffTTPPHPv05xtNHv27Dx9c95/OXLeI9HR0Q79NmzYYCSZf/3rXw7LkWQ2bNjg0Ldu3bqmbdu2eZZVmJz3xocffmicnZ3t2+rs2bPG19fX3HnnnQ77Lrfq1aub6tWrm/T09AL73H777SYwMNCcPXvW3nbp0iVTr149c9NNN9nnn7MP+vTp4zD9mTNnjLu7e4H75q/bPCEhIc82z9nWcXFxDtNHR0cbd3d3+/L/97//GUnm7bffdugXGxub5/2Sn4L2d85xUL9+fZOVlWVvP3v2rAkMDDTh4eGFzjc7O9sMHjzYODk5GUnGZrOZOnXqmBEjRpiEhASHvrVr1zaNGzc2Fy9edGjv2LGjCQkJcVj+5MmTjSTz1VdfmUcffdR4eHiYn3/+udBaUDAu8ZQyH374oTZt2pRnyP2/if/+97+y2Wx65JFHdOnSJfsQHByshg0b6scff7T3TU5O1pAhQxQWFqZy5crJxcVFlStXliTt2bMnTw0PPPDANV1HKf8zQrnddttt+uOPP9SjRw99/fXXeS5JSX9uh7vvvlu
  404. "text/plain": [
  405. "<Figure size 640x480 with 1 Axes>"
  406. ]
  407. },
  408. "metadata": {},
  409. "output_type": "display_data"
  410. }
  411. ],
  412. "source": [
  413. "# Plot sex and target in one histogramm via crosstab\n",
  414. "pd.crosstab(df.sex,df.target).plot(kind=\"bar\",color=['red','blue' ])\n",
  415. "plt.title('Heart Disease distribution according to Sex')\n",
  416. "plt.xlabel('Sex (0 = Female, 1 = Male)')\n",
  417. "plt.legend([\"no disease\", \"disease\"])"
  418. ]
  419. },
  420. {
  421. "cell_type": "code",
  422. "execution_count": 12,
  423. "metadata": {
  424. "scrolled": true
  425. },
  426. "outputs": [
  427. {
  428. "data": {
  429. "text/plain": [
  430. "Text(0, 0.5, 'Frequency of Disease or Not')"
  431. ]
  432. },
  433. "execution_count": 12,
  434. "metadata": {},
  435. "output_type": "execute_result"
  436. },
  437. {
  438. "data": {
  439. "image/png": "iVBORw0KGgoAAAANSUhEUgAABNYAAAIhCAYAAACCMjckAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAABg0klEQVR4nO3deZxO9f//8edl9p2xzJhmMBhbtiwJFcKUsZWiorIvIYSkfBOS3UT5WJIsRZbsFZnssu8lHyKMbbLvzDBzfn/0m+vjamaY67jGdeFxv92u2815n/c553Wd65ozzbP3OW+LYRiGAAAAAAAAANglm7MLAAAAAAAAAB5EBGsAAAAAAACACQRrAAAAAAAAgAkEawAAAAAAAIAJBGsAAAAAAACACQRrAAAAAAAAgAkEawAAAAAAAIAJBGsAAAAAAACACQRrAAAAAAAAgAkEawCA+2rKlCmyWCzaunVruuvr1aunAgUK3N+ibvPTTz+pX79+me7fokULWSwW68vPz08FChRQgwYNNHnyZCUmJqbZpnr16qpevbrjinZR/fr1szk3vr6+Cg8P1/PPP68vvvhCly9fTrNNixYt7P78T5w4oX79+mnnzp12bZfesSwWizp37mzXfu5m7NixmjJlSpr2w4cPy2KxpLvufurevbssFovq1avn1DruRep37XYFChRQixYtnFLH3V73+vP/999/q3fv3ipVqpT8/f3l7e2tqKgode3aVX/++ae1X4sWLeTv73+P78o+165dU79+/bRq1apM9U/9OUh9ZcuWTTlz5lRMTIw2bNhg9/HT+y6Y9e/re0av+/09AwC4FndnFwAAgCv56aef9J///MeucM3Hx0crVqyQJF2/fl1Hjx7VkiVL1LZtW40cOVJLly5VeHi4tf/YsWMdXbZLW7p0qYKCgpSUlKQTJ05o+fLl6tWrl4YPH67FixerTJky1r4fffSRunbtatf+T5w4of79+6tAgQIqW7Zsprczcywzxo4dq1y5cqX54ztv3rzasGGDChUqlOU1ZOTmzZv69ttvJf3zOR0/flyPPfaY0+pxpPnz5yswMPC+HrNNmzZ64YUXrMsnT55Uo0aN9M4776hp06bW9nupa/PmzapXr54Mw1Dnzp1VuXJleXp6at++ffr222/15JNP6vz58/f0Pu7FtWvX1L9/f0myK0BMPUfJycnas2eP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
  440. "text/plain": [
  441. "<Figure size 1500x600 with 1 Axes>"
  442. ]
  443. },
  444. "metadata": {},
  445. "output_type": "display_data"
  446. }
  447. ],
  448. "source": [
  449. "# Plot target and cp in one histogramm via crosstab\n",
  450. "pd.crosstab(df.cp,df.target).plot(kind=\"bar\",figsize=(15,6),color=['#11A5AA','#AA1190' ])\n",
  451. "plt.title('Heart Disease Distribution According To Chest Pain Type')\n",
  452. "plt.xlabel('Chest Pain Type')\n",
  453. "plt.xticks(rotation = 0)\n",
  454. "plt.ylabel('Frequency of Disease or Not')\n"
  455. ]
  456. },
  457. {
  458. "cell_type": "code",
  459. "execution_count": 13,
  460. "metadata": {},
  461. "outputs": [
  462. {
  463. "data": {
  464. "text/plain": [
  465. "<matplotlib.legend.Legend at 0x7fae87ff5c10>"
  466. ]
  467. },
  468. "execution_count": 13,
  469. "metadata": {},
  470. "output_type": "execute_result"
  471. },
  472. {
  473. "data": {
  474. "image/png": "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
  475. "text/plain": [
  476. "<Figure size 640x480 with 1 Axes>"
  477. ]
  478. },
  479. "metadata": {},
  480. "output_type": "display_data"
  481. }
  482. ],
  483. "source": [
  484. "# plot correlations for target\n",
  485. "plt.figure()\n",
  486. "plt.scatter(x=df.age[df.target==1], y=df.thalach[(df.target==1)], c=\"red\")\n",
  487. "plt.scatter(x=df.age[df.target==0], y=df.thalach[(df.target==0)])\n",
  488. "plt.title('Age-max Heart Rate Plot')\n",
  489. "plt.xlabel('age[years]')\n",
  490. "plt.ylabel('max. heart rate')\n",
  491. "plt.legend([\"Disease\", \"No Disease\"])"
  492. ]
  493. },
  494. {
  495. "cell_type": "code",
  496. "execution_count": 14,
  497. "metadata": {},
  498. "outputs": [
  499. {
  500. "data": {
  501. "text/plain": [
  502. "<matplotlib.legend.Legend at 0x7fae885004f0>"
  503. ]
  504. },
  505. "execution_count": 14,
  506. "metadata": {},
  507. "output_type": "execute_result"
  508. },
  509. {
  510. "data": {
  511. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAHFCAYAAAAUpjivAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAACMIElEQVR4nO3deVxU5f4H8M9hQBbZBAUGNVfUFHOncN9IMrfINM1bXm3TFrG8+bMNbdH0mku3G5WZLaZeU1IrRTP31DBNc8tcMLdBFGRxA505vz/GGRmGmfMMHGaG8fN+vciYOZx5OJyZ8z3P832+jyTLsgwiIiIiD+Xl6gYQERERVSYGO0REROTRGOwQERGRR2OwQ0RERB6NwQ4RERF5NAY7RERE5NEY7BAREZFHY7BDREREHo3BDhEREXk0BjtEbu6DDz6AJEmIjY11dVPMzp8/j//7v/9Dy5YtERgYCD8/P8TExGDcuHE4evSoebuRI0ciMDBQ1deuX78+Ro4cqeo+Tc6dO4fJkydj7969lbJ/USNHjkT9+vWFtpMkyfzl6+uLpk2bIiUlBdevXzdvN3nyZEiSVK62LFq0CHPmzCnXzxK5C29XN4CI7Pv8888BAAcPHsSvv/6Ke++916XtycjIQL9+/SDLMp5//nnEx8ejWrVqOHLkCBYuXIi4uDhcunTJpW0sr3PnzmHKlCmoX78+Wrdu7ermCPH398eGDRsAAJcuXcLixYvx1ltv4c8//8T//ve/Cu9/0aJFOHDgAJKTkyu8LyJXYbBD5MZ+++037Nu3Dw8++CB+/PFHzJ8/36XBTkFBAQYOHAg/Pz9s374dderUMT/XvXt3PPPMM1i2bJnL2ueurl27Bj8/v3L3rtjj5eWF++67z/z9Aw88gJMnT2Lp0qWYNWsWateurfprElU1HMYicmPz588HALz33nvo2LEjlixZgqtXr1ptd+bMGQwePBhBQUEIDQ3FY489hl27dkGSJHzxxRcW2/72228YMGAAwsLC4OfnhzZt2mDp0qVC7Zk3bx6ysrIwY8YMi0CnpMGDB1s9duzYMfTt2xeBgYGoW7cuXn75ZRQVFVlsk5ubi7Fjx6J27dqoVq0aGjZsiNdee81qu7IUFBRgwoQJaNCgAapVq4batWsjOTkZV65csdju22+/xb333ouQkBAEBASgYcOGGDVqFABg06ZN6NChAwDgn//8p3loaPLkyeafFzl2X3zxBSRJwrp16zBq1CjUqlULAQEBKCoqgsFgwIwZM9CsWTP4+voiIiICjz/+OM6cOaP4OzrCFPz8/fffNrcRaUv37t3x448/4u+//7YYLiOqahjsELmpa9euYfHixejQoQNiY2MxatQoFBYW4ttvv7XY7sqVK+jRowc2btyI6dOnY+nSpYiMjMTQoUOt9rlx40Z06tQJeXl5+Pjjj7Fy5Uq0bt0aQ4cOtQqKyrJu3TpoNBr0799f+Pe4ceMGBgwYgF69emHlypUYNWoUZs+ejenTp5u3uX79Onr06IGvvvoKL730En788UeMGDECM2bMQFJSkt39X716Fd26dcOXX36JF198EWvWrMHEiRPxxRdfYMCAAZBlGQCwY8cODB06FA0bNsSSJUvw448/4s0338TNmzcBAG3btsWCBQsAAK+//jp27NiBHTt24MknnyzXsRs1ahR8fHzw9ddfY9myZfDx8cGYMWMwceJEJCQkYNWqVXj77beRnp6Ojh074uLFi8LHVMmxY8cAALVq1bK5jUhbPvroI3Tq1AlRUVHm47Fjxw7V2knkNDIRuaWvvvpKBiB//PHHsizLcmFhoRwYGCh36dLFYrv//ve/MgB5zZo1Fo8/88wzMgB5wYIF5seaNWsmt2nTRr5x44bFtv369ZO1Wq2s1+vttqlZs2ZyVFSU8O/wxBNPyADkpUuXWjzet29fuWnTpubvP/744zK3mz59ugxAXrdunfmxevXqyU888YT5+2nTpsleXl7yrl27LH522bJlMgB59erVsizL8syZM2UAcl5ens327tq1y+qYmYgeuwULFsgA5Mcff9xiu8OHD8sA5LFjx1o8/uuvv8oA5FdffdX82BNPPCHXq1fPZjtLble9enX5xo0b8o0bN+QLFy7Ic+fOlSVJkjt06GDeLiUlRS75ce9IWx588EGhthC5M/bsELmp+fPnw9/fH48++igAIDAwEI888gi2bt1qMeNp8+bNCAoKQmJiosXPDxs2zOL7Y8eO4c8//8Rjjz0GALh586b5q2/fvtDpdDhy5IjVczdv3jT3jpSHJElWPUH33HOPxRDLhg0bUL16dashMNOsq59//tnm/n/44QfExsaidevWFm3u06cPJEnCpk2bAMA8RDVkyBAsXboUZ8+eFf4dHDl2Jg8//LDF9xs3brT4nUzi4uJw99132/0d7bly5Qp8fHzg4+ODWrVqITk5GQ888AC+++47mz9TWW0hclcMdojc0LFjx7BlyxY8+OCDkGUZeXl5yMvLMwcDphlaAJCTk4PIyEirfZR+7Pz58wCACRMmmC+Opq+xY8cCgHn4ovTzX375JQDgrrvuwoULF6xyYewJCAiAn5+fxWO+vr4WU6NzcnIQFRVllQ8SEREBb29v5OTk2Nz/+fPn8ccff1i1OSgoCLIsm3+nrl27YsWKFbh58yYef/xx1KlTB7GxsVi8eLHi7+DIsTPRarUW35t+h9KPA0B0dLTd39Eef39/7Nq1C7t27cIff/yBvLw8/Pjjj3YTkyurLUTuirOxiNzQ559/DlmWsWzZsjJnN3355Zd45513oNFoEB4ejoyMDKttsrKyLL6vWbMmAGDSpEk282CaNm0KANi1a5fF4w0aNAAA9OnTB+vWrcP3339v7nFSQ3h4OH799VfIsmwR8GRnZ+PmzZvmtpelZs2a8Pf3twgASz9vMnDgQAwcOBBFRUXYuXMnpk2bhuHDh6N+/fqIj4+3+xqA2LEzKR24hYeHAwB0Op1Vcve5c+fs/o72eHl5oX379g79TGW1hchdMdghcjN6vR5ffvklGjVqhM8++8zq+R9++AHvv/8+1qxZg379+qFbt25YunQp1qxZgwceeMC83ZIlSyx+rmnTpoiJicG+ffswdepUu22wdfEcPXo0/v3vf+OVV15Bly5dyuw9SEtLU0wqLq1Xr15YunQpVqxYgYceesj8+FdffWV+3pZ+/fph6tSpCA8PNwdlSnx9fdGtWzeEhoZi7dq1+P333xEfHw9fX18AxuTwkhw5drb07NkTALBw4ULzkBpgDCwPHz6M1157rVz7rey2+Pr6Wh0PoqqGwQ6Rm1mzZg3OnTuH6dOno3v37lbPx8bG4sMPP8T8+fPRr18/PPHEE5g9ezZGjBiBd955B40bN8aaNWuwdu1aAMY7f5NPPvkEDzzwAPr06YORI0eidu3ayM3NxeHDh7Fnzx6rmV6lhYSEYOXKlejXrx/atGljUVTw6NGjWLhwIfbt2+dwsPP444/jv//9L5544gmcPHkSLVu2xLZt2zB16lT07dsXvXv3tvmzycnJWL58Obp27Yrx48fjnnvugcFgwKlTp7Bu3Tq8/PLLuPfee/Hmm2/izJkz6NWrF+rUqYO8vDzMnTsXPj4+6NatGwCgUaNG8Pf3xzfffIO7774bgYGBiI6ORnR0dIWPXdOmTfH000/jP//5D7y8vMz1cN544w3UrVsX48ePd+iYVYQjbWnZsiXS0tKQmpqKdu3alasnicjlXJoeTURWBg0aJFerVk3Ozs62uc2jjz4qe3t7y1lZWbIsy/KpU6fkpKQkOTAwUA4KCpIffvhhefXq1TIAeeXKlRY/u2/fPnnIkCFyRESE7OPjI0dFRck9e/Y0z/oSkZWVJU+cOFFu0aKFHBAQIPv6+sqNGzeWn3nmGXn//v3m7UyzhUorPTtIlmU5JydHfvbZZ2WtVit7e3vL9erVkydNmiRfv37dYrvSs7FkWZYvX74sv/7663LTpk3latWqySEhIXLLli3l8ePHm4/RDz/8ID/wwANy7dq15WrVqskRERFy37595a1bt1rsa/HixXKzZs1kHx8fGYCckpL
  512. "text/plain": [
  513. "<Figure size 640x480 with 1 Axes>"
  514. ]
  515. },
  516. "metadata": {},
  517. "output_type": "display_data"
  518. }
  519. ],
  520. "source": [
  521. "plt.figure()\n",
  522. "plt.scatter(x=df.age[df.target==1], y=df.chol[(df.target==1)], c=\"red\")\n",
  523. "plt.scatter(x=df.age[df.target==0], y=df.chol[(df.target==0)])\n",
  524. "plt.title('Age-Cholesterol Plot')\n",
  525. "plt.xlabel('age[years]')\n",
  526. "plt.ylabel('Cholesterol')\n",
  527. "plt.legend([\"Disease\", \"No Disease\"])"
  528. ]
  529. },
  530. {
  531. "cell_type": "code",
  532. "execution_count": null,
  533. "metadata": {},
  534. "outputs": [],
  535. "source": []
  536. }
  537. ],
  538. "metadata": {
  539. "kernelspec": {
  540. "display_name": "Python 3 (ipykernel)",
  541. "language": "python",
  542. "name": "python3"
  543. },
  544. "language_info": {
  545. "codemirror_mode": {
  546. "name": "ipython",
  547. "version": 3
  548. },
  549. "file_extension": ".py",
  550. "mimetype": "text/x-python",
  551. "name": "python",
  552. "nbconvert_exporter": "python",
  553. "pygments_lexer": "ipython3",
  554. "version": "3.8.16"
  555. }
  556. },
  557. "nbformat": 4,
  558. "nbformat_minor": 4
  559. }