Skip to content
Permalink
d1bf7f4f4f
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
1342 lines (1341 sloc) 224 KB
{
"cells": [
{
"cell_type": "code",
"execution_count": 73,
"metadata": {},
"outputs": [],
"source": [
"#import libraries\n",
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns"
]
},
{
"cell_type": "code",
"execution_count": 74,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>id</th>\n",
" <th>diagnosis</th>\n",
" <th>radius_mean</th>\n",
" <th>texture_mean</th>\n",
" <th>perimeter_mean</th>\n",
" <th>area_mean</th>\n",
" <th>smoothness_mean</th>\n",
" <th>compactness_mean</th>\n",
" <th>concavity_mean</th>\n",
" <th>concave points_mean</th>\n",
" <th>...</th>\n",
" <th>texture_worst</th>\n",
" <th>perimeter_worst</th>\n",
" <th>area_worst</th>\n",
" <th>smoothness_worst</th>\n",
" <th>compactness_worst</th>\n",
" <th>concavity_worst</th>\n",
" <th>concave points_worst</th>\n",
" <th>symmetry_worst</th>\n",
" <th>fractal_dimension_worst</th>\n",
" <th>Unnamed: 32</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>842302</td>\n",
" <td>M</td>\n",
" <td>17.99</td>\n",
" <td>10.38</td>\n",
" <td>122.80</td>\n",
" <td>1001.0</td>\n",
" <td>0.11840</td>\n",
" <td>0.27760</td>\n",
" <td>0.3001</td>\n",
" <td>0.14710</td>\n",
" <td>...</td>\n",
" <td>17.33</td>\n",
" <td>184.60</td>\n",
" <td>2019.0</td>\n",
" <td>0.1622</td>\n",
" <td>0.6656</td>\n",
" <td>0.7119</td>\n",
" <td>0.2654</td>\n",
" <td>0.4601</td>\n",
" <td>0.11890</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>842517</td>\n",
" <td>M</td>\n",
" <td>20.57</td>\n",
" <td>17.77</td>\n",
" <td>132.90</td>\n",
" <td>1326.0</td>\n",
" <td>0.08474</td>\n",
" <td>0.07864</td>\n",
" <td>0.0869</td>\n",
" <td>0.07017</td>\n",
" <td>...</td>\n",
" <td>23.41</td>\n",
" <td>158.80</td>\n",
" <td>1956.0</td>\n",
" <td>0.1238</td>\n",
" <td>0.1866</td>\n",
" <td>0.2416</td>\n",
" <td>0.1860</td>\n",
" <td>0.2750</td>\n",
" <td>0.08902</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>84300903</td>\n",
" <td>M</td>\n",
" <td>19.69</td>\n",
" <td>21.25</td>\n",
" <td>130.00</td>\n",
" <td>1203.0</td>\n",
" <td>0.10960</td>\n",
" <td>0.15990</td>\n",
" <td>0.1974</td>\n",
" <td>0.12790</td>\n",
" <td>...</td>\n",
" <td>25.53</td>\n",
" <td>152.50</td>\n",
" <td>1709.0</td>\n",
" <td>0.1444</td>\n",
" <td>0.4245</td>\n",
" <td>0.4504</td>\n",
" <td>0.2430</td>\n",
" <td>0.3613</td>\n",
" <td>0.08758</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>84348301</td>\n",
" <td>M</td>\n",
" <td>11.42</td>\n",
" <td>20.38</td>\n",
" <td>77.58</td>\n",
" <td>386.1</td>\n",
" <td>0.14250</td>\n",
" <td>0.28390</td>\n",
" <td>0.2414</td>\n",
" <td>0.10520</td>\n",
" <td>...</td>\n",
" <td>26.50</td>\n",
" <td>98.87</td>\n",
" <td>567.7</td>\n",
" <td>0.2098</td>\n",
" <td>0.8663</td>\n",
" <td>0.6869</td>\n",
" <td>0.2575</td>\n",
" <td>0.6638</td>\n",
" <td>0.17300</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>84358402</td>\n",
" <td>M</td>\n",
" <td>20.29</td>\n",
" <td>14.34</td>\n",
" <td>135.10</td>\n",
" <td>1297.0</td>\n",
" <td>0.10030</td>\n",
" <td>0.13280</td>\n",
" <td>0.1980</td>\n",
" <td>0.10430</td>\n",
" <td>...</td>\n",
" <td>16.67</td>\n",
" <td>152.20</td>\n",
" <td>1575.0</td>\n",
" <td>0.1374</td>\n",
" <td>0.2050</td>\n",
" <td>0.4000</td>\n",
" <td>0.1625</td>\n",
" <td>0.2364</td>\n",
" <td>0.07678</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 33 columns</p>\n",
"</div>"
],
"text/plain": [
" id diagnosis radius_mean texture_mean perimeter_mean area_mean \\\n",
"0 842302 M 17.99 10.38 122.80 1001.0 \n",
"1 842517 M 20.57 17.77 132.90 1326.0 \n",
"2 84300903 M 19.69 21.25 130.00 1203.0 \n",
"3 84348301 M 11.42 20.38 77.58 386.1 \n",
"4 84358402 M 20.29 14.34 135.10 1297.0 \n",
"\n",
" smoothness_mean compactness_mean concavity_mean concave points_mean \\\n",
"0 0.11840 0.27760 0.3001 0.14710 \n",
"1 0.08474 0.07864 0.0869 0.07017 \n",
"2 0.10960 0.15990 0.1974 0.12790 \n",
"3 0.14250 0.28390 0.2414 0.10520 \n",
"4 0.10030 0.13280 0.1980 0.10430 \n",
"\n",
" ... texture_worst perimeter_worst area_worst smoothness_worst \\\n",
"0 ... 17.33 184.60 2019.0 0.1622 \n",
"1 ... 23.41 158.80 1956.0 0.1238 \n",
"2 ... 25.53 152.50 1709.0 0.1444 \n",
"3 ... 26.50 98.87 567.7 0.2098 \n",
"4 ... 16.67 152.20 1575.0 0.1374 \n",
"\n",
" compactness_worst concavity_worst concave points_worst symmetry_worst \\\n",
"0 0.6656 0.7119 0.2654 0.4601 \n",
"1 0.1866 0.2416 0.1860 0.2750 \n",
"2 0.4245 0.4504 0.2430 0.3613 \n",
"3 0.8663 0.6869 0.2575 0.6638 \n",
"4 0.2050 0.4000 0.1625 0.2364 \n",
"\n",
" fractal_dimension_worst Unnamed: 32 \n",
"0 0.11890 NaN \n",
"1 0.08902 NaN \n",
"2 0.08758 NaN \n",
"3 0.17300 NaN \n",
"4 0.07678 NaN \n",
"\n",
"[5 rows x 33 columns]"
]
},
"execution_count": 74,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#import dataset\n",
"df = pd.read_csv('data.csv') #file is located in source folder\n",
"df.head() #preview the data "
]
},
{
"cell_type": "code",
"execution_count": 75,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"id 0\n",
"diagnosis 0\n",
"radius_mean 0\n",
"texture_mean 0\n",
"perimeter_mean 0\n",
"area_mean 0\n",
"smoothness_mean 0\n",
"compactness_mean 0\n",
"concavity_mean 0\n",
"concave points_mean 0\n",
"symmetry_mean 0\n",
"fractal_dimension_mean 0\n",
"radius_se 0\n",
"texture_se 0\n",
"perimeter_se 0\n",
"area_se 0\n",
"smoothness_se 0\n",
"compactness_se 0\n",
"concavity_se 0\n",
"concave points_se 0\n",
"symmetry_se 0\n",
"fractal_dimension_se 0\n",
"radius_worst 0\n",
"texture_worst 0\n",
"perimeter_worst 0\n",
"area_worst 0\n",
"smoothness_worst 0\n",
"compactness_worst 0\n",
"concavity_worst 0\n",
"concave points_worst 0\n",
"symmetry_worst 0\n",
"fractal_dimension_worst 0\n",
"Unnamed: 32 569\n",
"dtype: int64"
]
},
"execution_count": 75,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Checking for columns with empty data\n",
"\n",
"df.isnull().sum()"
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>diagnosis</th>\n",
" <th>radius_mean</th>\n",
" <th>texture_mean</th>\n",
" <th>perimeter_mean</th>\n",
" <th>area_mean</th>\n",
" <th>smoothness_mean</th>\n",
" <th>compactness_mean</th>\n",
" <th>concavity_mean</th>\n",
" <th>concave points_mean</th>\n",
" <th>symmetry_mean</th>\n",
" <th>...</th>\n",
" <th>radius_worst</th>\n",
" <th>texture_worst</th>\n",
" <th>perimeter_worst</th>\n",
" <th>area_worst</th>\n",
" <th>smoothness_worst</th>\n",
" <th>compactness_worst</th>\n",
" <th>concavity_worst</th>\n",
" <th>concave points_worst</th>\n",
" <th>symmetry_worst</th>\n",
" <th>fractal_dimension_worst</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>M</td>\n",
" <td>17.99</td>\n",
" <td>10.38</td>\n",
" <td>122.80</td>\n",
" <td>1001.0</td>\n",
" <td>0.11840</td>\n",
" <td>0.27760</td>\n",
" <td>0.3001</td>\n",
" <td>0.14710</td>\n",
" <td>0.2419</td>\n",
" <td>...</td>\n",
" <td>25.38</td>\n",
" <td>17.33</td>\n",
" <td>184.60</td>\n",
" <td>2019.0</td>\n",
" <td>0.1622</td>\n",
" <td>0.6656</td>\n",
" <td>0.7119</td>\n",
" <td>0.2654</td>\n",
" <td>0.4601</td>\n",
" <td>0.11890</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>M</td>\n",
" <td>20.57</td>\n",
" <td>17.77</td>\n",
" <td>132.90</td>\n",
" <td>1326.0</td>\n",
" <td>0.08474</td>\n",
" <td>0.07864</td>\n",
" <td>0.0869</td>\n",
" <td>0.07017</td>\n",
" <td>0.1812</td>\n",
" <td>...</td>\n",
" <td>24.99</td>\n",
" <td>23.41</td>\n",
" <td>158.80</td>\n",
" <td>1956.0</td>\n",
" <td>0.1238</td>\n",
" <td>0.1866</td>\n",
" <td>0.2416</td>\n",
" <td>0.1860</td>\n",
" <td>0.2750</td>\n",
" <td>0.08902</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>M</td>\n",
" <td>19.69</td>\n",
" <td>21.25</td>\n",
" <td>130.00</td>\n",
" <td>1203.0</td>\n",
" <td>0.10960</td>\n",
" <td>0.15990</td>\n",
" <td>0.1974</td>\n",
" <td>0.12790</td>\n",
" <td>0.2069</td>\n",
" <td>...</td>\n",
" <td>23.57</td>\n",
" <td>25.53</td>\n",
" <td>152.50</td>\n",
" <td>1709.0</td>\n",
" <td>0.1444</td>\n",
" <td>0.4245</td>\n",
" <td>0.4504</td>\n",
" <td>0.2430</td>\n",
" <td>0.3613</td>\n",
" <td>0.08758</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>M</td>\n",
" <td>11.42</td>\n",
" <td>20.38</td>\n",
" <td>77.58</td>\n",
" <td>386.1</td>\n",
" <td>0.14250</td>\n",
" <td>0.28390</td>\n",
" <td>0.2414</td>\n",
" <td>0.10520</td>\n",
" <td>0.2597</td>\n",
" <td>...</td>\n",
" <td>14.91</td>\n",
" <td>26.50</td>\n",
" <td>98.87</td>\n",
" <td>567.7</td>\n",
" <td>0.2098</td>\n",
" <td>0.8663</td>\n",
" <td>0.6869</td>\n",
" <td>0.2575</td>\n",
" <td>0.6638</td>\n",
" <td>0.17300</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>M</td>\n",
" <td>20.29</td>\n",
" <td>14.34</td>\n",
" <td>135.10</td>\n",
" <td>1297.0</td>\n",
" <td>0.10030</td>\n",
" <td>0.13280</td>\n",
" <td>0.1980</td>\n",
" <td>0.10430</td>\n",
" <td>0.1809</td>\n",
" <td>...</td>\n",
" <td>22.54</td>\n",
" <td>16.67</td>\n",
" <td>152.20</td>\n",
" <td>1575.0</td>\n",
" <td>0.1374</td>\n",
" <td>0.2050</td>\n",
" <td>0.4000</td>\n",
" <td>0.1625</td>\n",
" <td>0.2364</td>\n",
" <td>0.07678</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 31 columns</p>\n",
"</div>"
],
"text/plain": [
" diagnosis radius_mean texture_mean perimeter_mean area_mean \\\n",
"0 M 17.99 10.38 122.80 1001.0 \n",
"1 M 20.57 17.77 132.90 1326.0 \n",
"2 M 19.69 21.25 130.00 1203.0 \n",
"3 M 11.42 20.38 77.58 386.1 \n",
"4 M 20.29 14.34 135.10 1297.0 \n",
"\n",
" smoothness_mean compactness_mean concavity_mean concave points_mean \\\n",
"0 0.11840 0.27760 0.3001 0.14710 \n",
"1 0.08474 0.07864 0.0869 0.07017 \n",
"2 0.10960 0.15990 0.1974 0.12790 \n",
"3 0.14250 0.28390 0.2414 0.10520 \n",
"4 0.10030 0.13280 0.1980 0.10430 \n",
"\n",
" symmetry_mean ... radius_worst texture_worst perimeter_worst \\\n",
"0 0.2419 ... 25.38 17.33 184.60 \n",
"1 0.1812 ... 24.99 23.41 158.80 \n",
"2 0.2069 ... 23.57 25.53 152.50 \n",
"3 0.2597 ... 14.91 26.50 98.87 \n",
"4 0.1809 ... 22.54 16.67 152.20 \n",
"\n",
" area_worst smoothness_worst compactness_worst concavity_worst \\\n",
"0 2019.0 0.1622 0.6656 0.7119 \n",
"1 1956.0 0.1238 0.1866 0.2416 \n",
"2 1709.0 0.1444 0.4245 0.4504 \n",
"3 567.7 0.2098 0.8663 0.6869 \n",
"4 1575.0 0.1374 0.2050 0.4000 \n",
"\n",
" concave points_worst symmetry_worst fractal_dimension_worst \n",
"0 0.2654 0.4601 0.11890 \n",
"1 0.1860 0.2750 0.08902 \n",
"2 0.2430 0.3613 0.08758 \n",
"3 0.2575 0.6638 0.17300 \n",
"4 0.1625 0.2364 0.07678 \n",
"\n",
"[5 rows x 31 columns]"
]
},
"execution_count": 76,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Remove last Unnamed:32 column because it is full of empty data and ID Column is also useless.\n",
"df= df.drop(['Unnamed: 32','id'],axis=1)\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 77,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"B 357\n",
"M 212\n",
"Name: diagnosis, dtype: int64"
]
},
"execution_count": 77,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Analysing the data\n",
"#Diagnosis column is the dependent variable.\n",
"df['diagnosis'].value_counts()"
]
},
{
"cell_type": "code",
"execution_count": 78,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>diagnosis</th>\n",
" <th>radius_mean</th>\n",
" <th>texture_mean</th>\n",
" <th>perimeter_mean</th>\n",
" <th>area_mean</th>\n",
" <th>smoothness_mean</th>\n",
" <th>compactness_mean</th>\n",
" <th>concavity_mean</th>\n",
" <th>concave points_mean</th>\n",
" <th>symmetry_mean</th>\n",
" <th>...</th>\n",
" <th>radius_worst</th>\n",
" <th>texture_worst</th>\n",
" <th>perimeter_worst</th>\n",
" <th>area_worst</th>\n",
" <th>smoothness_worst</th>\n",
" <th>compactness_worst</th>\n",
" <th>concavity_worst</th>\n",
" <th>concave points_worst</th>\n",
" <th>symmetry_worst</th>\n",
" <th>fractal_dimension_worst</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>17.99</td>\n",
" <td>10.38</td>\n",
" <td>122.80</td>\n",
" <td>1001.0</td>\n",
" <td>0.11840</td>\n",
" <td>0.27760</td>\n",
" <td>0.3001</td>\n",
" <td>0.14710</td>\n",
" <td>0.2419</td>\n",
" <td>...</td>\n",
" <td>25.38</td>\n",
" <td>17.33</td>\n",
" <td>184.60</td>\n",
" <td>2019.0</td>\n",
" <td>0.1622</td>\n",
" <td>0.6656</td>\n",
" <td>0.7119</td>\n",
" <td>0.2654</td>\n",
" <td>0.4601</td>\n",
" <td>0.11890</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1</td>\n",
" <td>20.57</td>\n",
" <td>17.77</td>\n",
" <td>132.90</td>\n",
" <td>1326.0</td>\n",
" <td>0.08474</td>\n",
" <td>0.07864</td>\n",
" <td>0.0869</td>\n",
" <td>0.07017</td>\n",
" <td>0.1812</td>\n",
" <td>...</td>\n",
" <td>24.99</td>\n",
" <td>23.41</td>\n",
" <td>158.80</td>\n",
" <td>1956.0</td>\n",
" <td>0.1238</td>\n",
" <td>0.1866</td>\n",
" <td>0.2416</td>\n",
" <td>0.1860</td>\n",
" <td>0.2750</td>\n",
" <td>0.08902</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1</td>\n",
" <td>19.69</td>\n",
" <td>21.25</td>\n",
" <td>130.00</td>\n",
" <td>1203.0</td>\n",
" <td>0.10960</td>\n",
" <td>0.15990</td>\n",
" <td>0.1974</td>\n",
" <td>0.12790</td>\n",
" <td>0.2069</td>\n",
" <td>...</td>\n",
" <td>23.57</td>\n",
" <td>25.53</td>\n",
" <td>152.50</td>\n",
" <td>1709.0</td>\n",
" <td>0.1444</td>\n",
" <td>0.4245</td>\n",
" <td>0.4504</td>\n",
" <td>0.2430</td>\n",
" <td>0.3613</td>\n",
" <td>0.08758</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1</td>\n",
" <td>11.42</td>\n",
" <td>20.38</td>\n",
" <td>77.58</td>\n",
" <td>386.1</td>\n",
" <td>0.14250</td>\n",
" <td>0.28390</td>\n",
" <td>0.2414</td>\n",
" <td>0.10520</td>\n",
" <td>0.2597</td>\n",
" <td>...</td>\n",
" <td>14.91</td>\n",
" <td>26.50</td>\n",
" <td>98.87</td>\n",
" <td>567.7</td>\n",
" <td>0.2098</td>\n",
" <td>0.8663</td>\n",
" <td>0.6869</td>\n",
" <td>0.2575</td>\n",
" <td>0.6638</td>\n",
" <td>0.17300</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1</td>\n",
" <td>20.29</td>\n",
" <td>14.34</td>\n",
" <td>135.10</td>\n",
" <td>1297.0</td>\n",
" <td>0.10030</td>\n",
" <td>0.13280</td>\n",
" <td>0.1980</td>\n",
" <td>0.10430</td>\n",
" <td>0.1809</td>\n",
" <td>...</td>\n",
" <td>22.54</td>\n",
" <td>16.67</td>\n",
" <td>152.20</td>\n",
" <td>1575.0</td>\n",
" <td>0.1374</td>\n",
" <td>0.2050</td>\n",
" <td>0.4000</td>\n",
" <td>0.1625</td>\n",
" <td>0.2364</td>\n",
" <td>0.07678</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 31 columns</p>\n",
"</div>"
],
"text/plain": [
" diagnosis radius_mean texture_mean perimeter_mean area_mean \\\n",
"0 1 17.99 10.38 122.80 1001.0 \n",
"1 1 20.57 17.77 132.90 1326.0 \n",
"2 1 19.69 21.25 130.00 1203.0 \n",
"3 1 11.42 20.38 77.58 386.1 \n",
"4 1 20.29 14.34 135.10 1297.0 \n",
"\n",
" smoothness_mean compactness_mean concavity_mean concave points_mean \\\n",
"0 0.11840 0.27760 0.3001 0.14710 \n",
"1 0.08474 0.07864 0.0869 0.07017 \n",
"2 0.10960 0.15990 0.1974 0.12790 \n",
"3 0.14250 0.28390 0.2414 0.10520 \n",
"4 0.10030 0.13280 0.1980 0.10430 \n",
"\n",
" symmetry_mean ... radius_worst texture_worst perimeter_worst \\\n",
"0 0.2419 ... 25.38 17.33 184.60 \n",
"1 0.1812 ... 24.99 23.41 158.80 \n",
"2 0.2069 ... 23.57 25.53 152.50 \n",
"3 0.2597 ... 14.91 26.50 98.87 \n",
"4 0.1809 ... 22.54 16.67 152.20 \n",
"\n",
" area_worst smoothness_worst compactness_worst concavity_worst \\\n",
"0 2019.0 0.1622 0.6656 0.7119 \n",
"1 1956.0 0.1238 0.1866 0.2416 \n",
"2 1709.0 0.1444 0.4245 0.4504 \n",
"3 567.7 0.2098 0.8663 0.6869 \n",
"4 1575.0 0.1374 0.2050 0.4000 \n",
"\n",
" concave points_worst symmetry_worst fractal_dimension_worst \n",
"0 0.2654 0.4601 0.11890 \n",
"1 0.1860 0.2750 0.08902 \n",
"2 0.2430 0.3613 0.08758 \n",
"3 0.2575 0.6638 0.17300 \n",
"4 0.1625 0.2364 0.07678 \n",
"\n",
"[5 rows x 31 columns]"
]
},
"execution_count": 78,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#The diagnosis column must be encoded from M/B (malignant and benign) to numerical values\n",
"from sklearn import preprocessing\n",
"le = preprocessing.LabelEncoder()\n",
"df['diagnosis'] = le.fit_transform(df['diagnosis'])\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 79,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x201da4cd0d0>"
]
},
"execution_count": 79,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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rwFeAvwVuMj2xlWDNULS5bZfPNK2iCebpJ2AzwLPptTAEWDb06sGi6HRfQcfV5okxDBIjaaIiIgI2AV4HXCE7TslPQ84oHKmltwqaQ/gu9373YDbKuaJ4XU4sIPta2sHiaG1wxN8liYJMRQyoykiIiIiJkTS84EvAVtQbqTmAPva/l3VYDF0JP3C9la1c0REDLMMNEVERETEhEiaDfyL7Tu698+gzA7bq26yGDaSjgSeC/wAuL+3PcuVogZJb6AUpV+mt832wfUSRUyOLJ2LiIiIiIma0RtkArB9u6RNagaKoTUdmA9s17cty5Vi0kn6CvB0YGvga8DOwEVVQ0VMksxoioiIiIgJkXQF8OpFZjSdZ3ujuskiIuqQdKXtGX2vywMn2d5uxD+OaFxmNEVERETERH0emCPpBMrskV2AQ+tGimEkaXVgJrAV5bv4c2A/23+oGiyG0V+71/mSVqU0SFi7Yp6ISbNE7QARERER0Tbb3wLeDPw38D/ATraPrZsqhtQs4FRgVWA14LRuW8RkO13SSsDngLnATcD3qiaKmCRZOhcREREREVOCpMttv3ikbRFPNklL276/9zulIPh9vW0RU1lmNEVERERExFRxq6Q9JE3rfvagLFmKmGy/7P1i+37bd/Vvi5jKUqMpIiIiIiKmir2ALwH/RqnRNKfbFjEpJD2Xsmxz2a77prqPplO60EVMeVk6FxERERERETEAkvYE3gm8FLiYBQNNdwOzbZ9UKVrEpMlAU0RERERETAmSZlO6zN3ZvV8Z+LztzGqKSSXpzbZPrJ0joobUaIqIiIiIiKliRm+QCcD2HcAmFfPE8HpJ13UOKIOekj5VM1DEZMlAU0RERERETBVLdLOYAJD0DFKXNurYfjGDnq+vmCdi0uSgGxERERERU8XngTmSTqAUA98FOLRupBhS0yQtbft+AEnLAktXzhQxKTLQFBERERERU4Ltb0m6BNiGUoR5J9vXVI4Vw+k44BxJsyiDnnsBs+tGipgcKQYeERERERERMWCStge2pQx6nm37rMqRIiZFBpoiIiIiIiIiImIgUgw8IiIiIiIiYoAkvVzSxZLukfSApIcl3V07V8RkyEBTRERERERExGB9CdgN+DWwLPBuYGbVRBGTJMXAIyIiIiIiIgbM9m8kTbP9MDBL0pzamSImQwaaIiIiIiIiIgZrvqSlgMslHQ7cAixXOVPEpMjSuYiIiIiIiIjBejvlfvt/A/cCawBvrpooYpKk61xERERERETEgEiaBsy2vUftLBE1ZEZTRERERERExIB0NZlW6ZbORQyd1GiKiIiIiIiIGKybgF9IOpWydA4A21+olihikmRGU0RERERERMQASDq2+3VX4HTKPfcKfT8RU15mNEVEREREREQMxkskrQn8DphZO0xEDRloioiIiIiIiBiMrwBnAmsDl/RtF2BgnRqhIiZTus5FREREREREDJCko2y/r3aOiBoy0BQREREREREREQORYuARERERERERETEQGWiKiIiIiIiIiIiByEBTREREREREREQMRAaaIiIiIiIiIiJiIP4/C+rtjRBp4qEAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 1440x1440 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#Looking for features with strongest correlation to diagnosis by using a correlation matrix.\n",
"#I will use the average values for each feature instead of all values as it gives a general idea of that features' impact on\n",
"#the diagnosis\n",
"plt.figure(figsize = (20, 20))\n",
"sns.heatmap(df.iloc[:,0:11].corr(),annot=True,cmap='coolwarm')"
]
},
{
"cell_type": "code",
"execution_count": 80,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(569, 30)\n",
"(569,)\n"
]
}
],
"source": [
"#Since we are predicting diagnosis(y = dependent) using the independent(x) variables. The column data must be split before applying any models.\n",
"from sklearn.model_selection import train_test_split\n",
"X = df.drop(['diagnosis'], axis = 1)\n",
"Y = df['diagnosis']\n",
"print(X.shape)\n",
"print(Y.shape)"
]
},
{
"cell_type": "code",
"execution_count": 81,
"metadata": {},
"outputs": [],
"source": [
"#Now we must split the data into training and testing sets\n",
"from sklearn.model_selection import train_test_split\n",
"X_train,X_test,Y_train,Y_test = train_test_split(X,Y, test_size=0.3,random_state=42)"
]
},
{
"cell_type": "code",
"execution_count": 82,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(398, 30)\n",
"(398,)\n",
"(171, 30)\n",
"(171,)\n"
]
}
],
"source": [
"#Previewing dimensions for each group\n",
"print(X_train.shape)\n",
"print(Y_train.shape)\n",
"print(X_test.shape)\n",
"print(Y_test.shape)"
]
},
{
"cell_type": "code",
"execution_count": 83,
"metadata": {},
"outputs": [],
"source": [
"#Before applying the model, the data must be scaled. This allows for standardisation of all the values.\n",
"from sklearn.preprocessing import StandardScaler\n",
"sscaling = StandardScaler()\n",
"X_train = sscaling.fit_transform(X_train)\n",
"X_test= sscaling.transform(X_test)"
]
},
{
"cell_type": "code",
"execution_count": 84,
"metadata": {},
"outputs": [],
"source": [
"# Applying the models and evaluation\n",
"\n",
"from sklearn.metrics import accuracy_score\n",
"from sklearn.metrics import confusion_matrix\n",
"from sklearn.metrics import classification_report\n",
"from sklearn.svm import SVC\n",
"from sklearn.neighbors import KNeighborsClassifier\n",
"from sklearn.metrics import roc_auc_score\n",
"from scipy.stats import loguniform\n",
"from sklearn.linear_model import LogisticRegression\n",
"from sklearn.model_selection import RepeatedStratifiedKFold\n",
"from sklearn.model_selection import RandomizedSearchCV\n",
"from sklearn.model_selection import cross_val_score\n",
"from sklearn.model_selection import GridSearchCV\n",
"from sklearn import metrics"
]
},
{
"cell_type": "code",
"execution_count": 85,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SVC Accuracy: 0.9766081871345029\n",
"ROC Score: 0.974867724867725\n",
" precision recall f1-score support\n",
"\n",
" 0 0.98 0.98 0.98 108\n",
" 1 0.97 0.97 0.97 63\n",
"\n",
" accuracy 0.98 171\n",
" macro avg 0.97 0.97 0.97 171\n",
"weighted avg 0.98 0.98 0.98 171\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#SVC default accuracy\n",
"\n",
"svc = SVC()\n",
"svc.fit(X_train,Y_train)\n",
"Y_prediction_svc = svc.predict(X_test)\n",
"\n",
"print('SVC Accuracy: {}'.format(accuracy_score(Y_test, Y_prediction_svc)))\n",
"print('ROC Score: {}'.format(roc_auc_score(Y_test, Y_prediction_svc)))\n",
"\n",
"#SVC Confusion Matrix\n",
"svccfm = confusion_matrix(Y_test,Y_prediction_svc,labels=[1,0])\n",
"sns.heatmap(svccfm, annot=True,fmt='g', cmap='coolwarm')\n",
"\n",
"#Printing classification report\n",
"print(classification_report(Y_test, Y_prediction_svc))"
]
},
{
"cell_type": "code",
"execution_count": 86,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Hyperparameters to use:\n",
" {'C': 0.1, 'kernel': 'linear'}\n",
"Best Score: \n",
" 0.9748417721518987\n",
"Tuned SVC Accuracy: 0.9824561403508771\n",
"ROC Score: 0.9794973544973545\n",
" precision recall f1-score support\n",
"\n",
" 0 0.98 0.99 0.99 108\n",
" 1 0.98 0.97 0.98 63\n",
"\n",
" accuracy 0.98 171\n",
" macro avg 0.98 0.98 0.98 171\n",
"weighted avg 0.98 0.98 0.98 171\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#SVC with hyperparameters\n",
"\n",
"svc2 = SVC()\n",
"parameters = {'kernel': ['poly', 'sigmoid','linear','rbf'],'C': [50, 10, 1.0, 0.1, 0.01] }\n",
"svc2_grid = GridSearchCV(svc2, param_grid=parameters)\n",
"svc2_grid.fit(X_train,Y_train)\n",
"print(\"Hyperparameters to use:\\n\",svc2_grid.best_params_)\n",
"print(\"Best Score: \\n\",svc2_grid.best_score_)\n",
"svc2_pred = svc2_grid.predict(X_test)\n",
"\n",
"\n",
"print('Tuned SVC Accuracy: {}'.format(accuracy_score(Y_test, svc2_pred)))\n",
"print('ROC Score: {}'.format(roc_auc_score(Y_test, svc2_pred)))\n",
"\n",
"#Tuned SVC Confusion Matrix\n",
"svc2cfm = confusion_matrix(Y_test,svc2_pred,labels=[1,0])\n",
"sns.heatmap(svc2cfm, annot=True,fmt='g', cmap='coolwarm')\n",
"\n",
"#Printing new classification report\n",
"print(classification_report(Y_test, svc2_pred))"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Logistic Regression Accuracy: 0.9824561403508771\n",
"ROC Score: 0.9828042328042329\n",
" precision recall f1-score support\n",
"\n",
" 0 0.99 0.98 0.99 108\n",
" 1 0.97 0.98 0.98 63\n",
"\n",
" accuracy 0.98 171\n",
" macro avg 0.98 0.98 0.98 171\n",
"weighted avg 0.98 0.98 0.98 171\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#Logistic Regression\n",
"\n",
"lr = LogisticRegression()\n",
"lr.fit(X_train,Y_train)\n",
"Y_prediction_lr= lr.predict(X_test)\n",
"\n",
"print('Logistic Regression Accuracy: {}'.format(accuracy_score(Y_test, Y_prediction_lr)))\n",
"print('ROC Score: {}'.format(roc_auc_score(Y_test, Y_prediction_lr)))\n",
"\n",
"#LR Confusion Matrix\n",
"lrcfm = confusion_matrix(Y_test,Y_prediction_lr,labels=[1,0])\n",
"sns.heatmap(lrcfm, annot=True,fmt='g', cmap='coolwarm')\n",
"\n",
"#Printing classification report\n",
"print(classification_report(Y_test, Y_prediction_lr))"
]
},
{
"cell_type": "code",
"execution_count": 88,
"metadata": {
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Hyperparameters to use: {'C': 0.39989280818902445, 'penalty': 'l2', 'solver': 'liblinear'}\n",
"Best Score: 0.9751075949367088\n",
"Tuned LR Accuracy: 0.9941520467836257\n",
"ROC Score: 0.9920634920634921\n"
]
}
],
"source": [
"#Logistic Regression + Random search\n",
"\n",
"lr2 = LogisticRegression()\n",
"cv = RepeatedStratifiedKFold(n_splits=5)\n",
"lrhp = {'penalty': ['none', 'l1', 'l2', 'elasticnet'],'solver':['newton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'], 'C': loguniform(1e-5, 100)}\n",
"randomsearch = RandomizedSearchCV(lr2, lrhp, n_iter=500, cv=cv, n_jobs=-1, scoring='accuracy')\n",
"lr2_random = randomsearch.fit(X_train, Y_train)\n",
"print('Hyperparameters to use: %s' % lr2_random.best_params_)\n",
"print('Best Score: %s' % lr2_random.best_score_)\n",
"\n",
"#Tuned prediction variable\n",
"lr2_pred = lr2_random.predict(X_test)\n",
"print('Tuned LR Accuracy: {}'.format(accuracy_score(Y_test, lr2_pred)))\n",
"print('ROC Score: {}'.format(roc_auc_score(Y_test, lr2_pred)))\n"
]
},
{
"cell_type": "code",
"execution_count": 89,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Tuned Logistic Regression Accuracy: 0.9941520467836257\n",
"ROC Score: 0.9920634920634921\n",
" precision recall f1-score support\n",
"\n",
" 0 0.99 1.00 1.00 108\n",
" 1 1.00 0.98 0.99 63\n",
"\n",
" accuracy 0.99 171\n",
" macro avg 1.00 0.99 0.99 171\n",
"weighted avg 0.99 0.99 0.99 171\n",
"\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAWAAAAD4CAYAAADSIzzWAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAARPElEQVR4nO3de5RdVX3A8e9vZpIQpEASkxASnjWgoNJoBHxRNHRBfZAsF6xCC40QnVULNlQtRq1FWh/Utqht1a5RgSgWFo0IESyKAQpYXuGhPCIGYZEMhCQSFOWRZOb++kcudIiTyc3Nndm5J9/PWnvde/Y5c86PlVm/+bHP3udEZiJJGnkdpQOQpJ2VCViSCjEBS1IhJmBJKsQELEmFdA33Bdb99CanWeh3zDknSoegHdCN333Ldv9iXD3q4IZzzjs3Plj0F9EKWJIKGfYKWJJGUoxqn/+7MgFLqpTOsZ2lQ2iYCVhSpXR0WQFLUhEOQUhSIVbAklSIFbAkFWIFLEmFdI5un+UNJmBJlRIdVsCSVER0WgFLUhEdne1TAbfPnwpJakB0RMNtq+eKuCAi1kTEfQP6xkfEtRGxvP45bsC+j0XEQxHxYEQcu7Xzm4AlVUrn6I6GWwMuAo7brG8BsCQzpwNL6ttExCHAScCh9Z/5SkQMuS7aBCypUqKjo+G2NZl5I7Bus+7ZwML694XAnAH9l2bm+sx8BHgIOHyo85uAJVXKtgxBRER3RCwd0LobuMTkzFwFUP+cVO+fCqwccFxvvW+LvAknqVK25SZcZvYAPS269GAXHvLh8CZgSZUyAvOAV0fElMxcFRFTgDX1/l5gnwHHTQMeH+pEDkFIqpRWjgFvwWJgbv37XODKAf0nRcSYiDgAmA7cPtSJrIAlVUrnqNbVlRFxCXA08PKI6AXOAc4DLouIecAK4ESAzLw/Ii4DHgD6gDMys3+o85uAJVVKK4cgMvPkLeyatYXjPwN8ptHzm4AlVcp2DC2MOBOwpErxYTySVIgJWJIK6ejyrciSVEQ7PQ3NBCypUhyCkKRCnAUhSYVYAUtSISZgSSrEWRCSVIhjwJJUSjgEIUlFOAYsSYU4BCFJhVgBS1IhzoKQpEKsgCWpFMeAJamMcBqaJJXhLAhJKiS8CSdJZXgTTpIKiXAIQpLKsAKWpDK8CSdJhTgGLEmFRKezICSpDIcgJKkMV8IJgN888yyf++pCfrHyMSLgEx84jRtuu4ub7/wJo7o6mTp5En97xmn83st2LR2qCvjomdN508xxPPXrjbx3/t2lw6kOK2ABfOHCSzhyxqF89iMfYOPGPp7fsIHDnz+ED/zZe+jq7OTLFy/im9/9PmecckLpUFXANdet5rvff5yPzz+odCiVUqmbcBHxSmA2MBVI4HFgcWYuG+bY2tozzz7HPQ8s55NnnA7AqFFdjBrVxRGHHfriMYdOP5Drb72zVIgq7CcPPM1eE8eUDqN62mghxpCRRsRHgUuBAG4H7qh/vyQiFgx/eO3rsdVr2XP33fj0ly/kz//mXD771Yt47vn1Lznmqutv5o0zXl0oQqmaorOz4bbVc0X8dUTcHxH3RcQlEbFLRIyPiGsjYnn9c1yzsW7tT8U84A2ZeV5mXlxv5wGH1/dtKejuiFgaEUsXLlrcbGxtrb9W4+ePrOA9xx7NN//pHMaOGcM3r/jvF/df9J2r6Ozo5Ni3HlkwSqmCOqLxNoSImAr8FTAzM18NdAInAQuAJZk5HVhS324u1K3srwF7D9I/pb5vUJnZk5kzM3Pm3BOObza2tjZp/DgmThjHodMPBOBtb3w9P3/4UQCuvuHH/PjOn3Lu/Pe11R1bqR1ER0fDrQFdwNiI6AJ2ZdMQ7GxgYX3/QmBOs7FubQz4LGBJRCwHVtb79gVeAZzZ7EV3BhPG7cHkCeN59LEn2G/qXiy9dxn7T9ubW+6+j4uvuIavnHs2u4xx/E9quW0oaiKiG+ge0NWTmT0AmflYRPwzsAJ4DvhhZv4wIiZn5qr6MasiYlKzoQ6ZgDPzmog4iE1DDlPZNP7bC9yRmf3NXnRn8aHTT+ZT//o1Nvb1MXXyRD7xl6dx+oJPs7Gvj/n/cD4Ahx50IB/tPrVwpCrh7z50MDMO3YM9du9i0dfewIWXruDqJatLh9X+tmEaWj3Z9gy2rz62Oxs4APgV8F8RcUorQnzBVmdBZGYNuLWVF91ZHHTAvlz4j598Sd+if/9coWi0o/n78x8sHUIltXAp8jHAI5m5FiAiLgfeBKyOiCn16ncKsKbZC7TPfA1JakR0NN6GtgI4MiJ2jU03a2YBy4DFwNz6MXOBK5sN1YUYkqqlRQsxMvO2iFgE3AX0AXezabhiN+CyiJjHpiR9YrPXMAFLqpRWvhEjM88Bztmsez2bquHtZgKWVC1VWoosSW2ljZYim4AlVYsPZJekQqyAJakQx4AlqRArYEkqpI0ecGUCllQtvpJIkgrpcBaEJJVhBSxJhTgGLEmFOAtCkgqxApakMtKlyJJUiEMQklSICViSykjHgCWpECtgSSrECliSynAWhCSV4hCEJJWRJmBJKsQxYEkqwwpYkkrxecCSVIYLMSSpFIcgJKmMxApYkorwJpwklWIClqQyam00C6J9/lRIUiMiGm9bPVXsGRGLIuJnEbEsIt4YEeMj4tqIWF7/HNdsqCZgSZWS0dFwa8CXgGsy85XAYcAyYAGwJDOnA0vq200xAUuqlCQabkOJiN2Bo4BvAGTmhsz8FTAbWFg/bCEwp9lYTcCSKmVbKuCI6I6IpQNa94BTHQisBS6MiLsj4usR8TJgcmauAqh/Tmo2Vm/CSaqWbVgJl5k9QM8WdncBrwM+mJm3RcSX2I7hhsFYAUuqlFp0Nty2ohfozczb6tuL2JSQV0fEFID655pmYzUBS6qUVt2Ey8wngJURcXC9axbwALAYmFvvmwtc2WysDkFIqpQWL0X+IPDtiBgNPAycxqbC9bKImAesAE5s9uQmYEmV0sqlyJl5DzBzkF2zWnF+E7CkSvFxlJJUSAM313YYJmBJleLjKCWpEB9HKUmFWAFLUiFWwAMc/4nacF9Cbehj13Rv/SDthB7c7jNYAUtSIbU2WuBrApZUKWkClqQyHIKQpEJMwJJUiAlYkgoxAUtSIbX0JpwkFWEFLEmFmIAlqZBME7AkFVGzApakMrwJJ0mFOAYsSYU4BixJhVgBS1IhVsCSVEg7vQLCBCypUpwFIUmFOAQhSYV4E06SCqll6QgaZwKWVClWwJJUiGPAklRIfxsl4PaZryFJDciMhlsjIqIzIu6OiKvq2+Mj4tqIWF7/HNdsrCZgSZWS2Xhr0Hxg2YDtBcCSzJwOLKlvN8UELKlSkmi4bU1ETAPeCXx9QPdsYGH9+0JgTrOxmoAlVUotG28R0R0RSwe07s1O90XgbF66wnlyZq4CqH9OajZWb8JJqpRarfGbcJnZA/QMti8i3gWsycw7I+Lo1kT3UiZgSZXSwlcSvRk4PiLeAewC7B4RFwOrI2JKZq6KiCnAmmYv4BCEpEpp1U24zPxYZk7LzP2Bk4DrMvMUYDEwt37YXODKZmO1ApZUKSOwEOM84LKImAesAE5s9kQmYEmVMhzPgsjMG4Ab6t+fBGa14rwmYEmVsg3ze4szAUuqlHZaimwCllQpVsCSVIgJWJIKqTkEIUllWAFLUiH9bfReehOwpErxjRiSVIhDEJJUiG9FlqRCrIAlqRATsCQV4iwISSqkZgKWpDIcgpCkQkzA+h1HvG4c89//Cjo6gquuXcXFi1aWDkkj5LVf+yyT3nE0G9Y8yY0z3g3AqHF7MOM/v8Cu+03l2Ucf466Tz6LvV08TXV28tufT7D7jEDo6u+i9+Ap+8flB3xmpLWinaWi+E24EdHTAh/5iOh/51L2ccsYdHHPUJPbfZ9fSYWmE9C68nNvf9b6X9P3+2d08ed0t3HDIsTx53S284uxNb0OfcsJxdIwezU0zjuemI97Dvu//E8buN7VE2G0rMxtupZmAR8Crpu9O76rneHz18/T1JT+6cQ1vOWJC6bA0QtbdvJSN6379kr7J755F77euAKD3W1cw+fhjNu3IpPNlY4nOTjrH7kJtw0b6nv7tSIfc1vr7G2+lmYBHwMQJo1nzy/Uvbq99cj0TJ4wpGJFKGzN5AuufWAvA+ifWMmbSeABWfecH9D/zHLNW3szbH76eh79wARuf+vVQp9JmWvVW5JHQdAKOiNOG2NcdEUsjYukTj36v2UtURgzybJAd4R9fO549D38tWauxZN+3cv30WRx41umMPWBa6bDaSi0bb6VtTwV87pZ2ZGZPZs7MzJl77ffu7bhENaz55QYmvfz/K96JE8bwy3Xrh/gJVd361U8yZq+JAIzZayLr16wDYO+T3sXaH9xE9vWxYe06nrrlLvZ8/WtKhtp2KlMBR8RPt9DuBSaPUIxt72fLn2afvccyZfIudHUFxxw1iR/f/mTpsFTQ6quuY9qpcwCYduocVn9vCQDPrVjFhLcdAUDnrmPZ8/DD+O2DDxeLsx1lLRtupW1tGtpk4Fjgqc36A/jfYYmogvprcP5/PMT5576Gjo7g6h89wSMrni0dlkbIH3zrX5jwh4cz+uXjePsj/8Pyv/83fvH5Hl53yRfZ57QTeG7lKu46aT4Aj3712xz29c9x1D1XQQS9Cy/nN/c+WPi/oL1UaSnyVcBumXnP5jsi4oZhiaiibr1zHbfeua50GCrgnlM/PGj/bce+93f6+p95lrtOnj/MEVVbbQeobBs1ZALOzHlD7PvT1ocjSdtnRxjbbZQr4SRViglYkgqptVEGNgFLqpSs0E04SWor/f1WwJJUxI7wkJ1G+SwISZXSqqXIEbFPRFwfEcsi4v6ImF/vHx8R10bE8vrnuGZjNQFLqpQWroTrAz6cma8CjgTOiIhDgAXAksycDiypbzfFBCypUlr1LIjMXJWZd9W//wZYBkwFZgML64ctBOY0G6tjwJIqZThWwkXE/sAM4DZgcmaugk1JOiImNXteE7CkSqltwyyIiOgGugd09WRmz2bH7AZ8BzgrM5+OwZ4v2yQTsKRK2ZaFGPVku8WX7kXEKDYl329n5uX17tURMaVe/U4B1jQbq2PAkiqlVe+Ei02l7jeAZZl5/oBdi4G59e9zgSubjdUKWFKltHAM+M3AqcC9EfHCEyE/DpwHXBYR84AVwInNXsAELKlSWrUOIzNvZtOzzwczqxXXMAFLqpT+NnoiuwlYUqXsCK8aapQJWFKlmIAlqZA2yr8mYEnVYgUsSYW00+MoTcCSKsVZEJJUiEMQklSICViSCvGtyJJUiBWwJBXiLAhJKqS/z1kQklSEFbAkFZI1K2BJKmI4Xso5XEzAkirFIQhJKqTmTThJKqOWJmBJKsKFGJJUiAlYkgrxJpwkFVJzHrAklVHr7y8dQsNMwJIqxTFgSSrEBCxJhTgPWJIKsQKWpEJ8GpokFeIsCEkqxMdRSlIh7TQE0VE6AElqpaxlw21rIuK4iHgwIh6KiAWtjtUKWFKlZIumoUVEJ/Bl4I+AXuCOiFicmQ+05AKYgCVVTK2vZTfhDgceysyHASLiUmA20LIEHO305KB2FxHdmdlTOg7tWPy9KCciuoHuAV09L/xbRMQJwHGZ+b769qnAEZl5Zquu7xjwyOre+iHaCfl7UUhm9mTmzAFt4B/CGOxHWnl9E7AkDa4X2GfA9jTg8VZewAQsSYO7A5geEQdExGjgJGBxKy/gTbiR5TifBuPvxQ4oM/si4kzgB0AncEFm3t/Ka3gTTpIKcQhCkgoxAUtSISbgETLcSxrVfiLigohYExH3lY5FZZiAR8CAJY1/DBwCnBwRh5SNSjuAi4DjSgehckzAI+PFJY2ZuQF4YUmjdmKZeSOwrnQcKscEPDKmAisHbPfW+yTtxEzAI2PYlzRKaj8m4JEx7EsaJbUfE/DIGPYljZLajwl4BGRmH/DCksZlwGWtXtKo9hMRlwC3AAdHRG9EzCsdk0aWS5ElqRArYEkqxAQsSYWYgCWpEBOwJBViApakQkzAklSICViSCvk/t1N2+Gk+gkMAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#Testing best parameters with new LR model to validate the accuracy score.\n",
"\n",
"lr3 = LogisticRegression( C = 0.08653165624875402, penalty = 'l2', solver = 'liblinear')\n",
"lr3.fit(X_train,Y_train)\n",
"Y_prediction_lr3= lr3.predict(X_test)\n",
"print('Tuned Logistic Regression Accuracy: {}'.format(accuracy_score(Y_test, Y_prediction_lr3)))\n",
"print('ROC Score: {}'.format(roc_auc_score(Y_test, Y_prediction_lr3)))\n",
"\n",
"#LR Confusion Matrix\n",
"lrcfm = confusion_matrix(Y_test,Y_prediction_lr3,labels=[1,0])\n",
"sns.heatmap(lrcfm, annot=True,fmt='g', cmap='coolwarm')\n",
"\n",
"#Printing new classification report\n",
"print(classification_report(Y_test, lr2_pred))"
]
},
{
"cell_type": "code",
"execution_count": 90,
"metadata": {
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"KNN Accuracy: 0.9707602339181286\n",
"ROC Score: 0.966931216931217\n",
" precision recall f1-score support\n",
"\n",
" 0 0.97 0.98 0.98 108\n",
" 1 0.97 0.95 0.96 63\n",
"\n",
" accuracy 0.97 171\n",
" macro avg 0.97 0.97 0.97 171\n",
"weighted avg 0.97 0.97 0.97 171\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#KNN default accuracy with K value for highest accuracy score\n",
"\n",
"knn2 = KNeighborsClassifier(n_neighbors=9)\n",
"knn2.fit(X_train,Y_train)\n",
"Y_prediction_knn = knn2.predict(X_test)\n",
"\n",
"print('KNN Accuracy: {}'.format(accuracy_score(Y_test, Y_prediction_knn)))\n",
"print('ROC Score: {}'.format(roc_auc_score(Y_test, Y_prediction_knn)))\n",
"\n",
"#KNN Confusion Matrix\n",
"knncfm = confusion_matrix(Y_test,Y_prediction_knn,labels=[1,0])\n",
"sns.heatmap(knncfm, annot=True,fmt='g', cmap='coolwarm')\n",
"\n",
"#Printing classification report\n",
"print(classification_report(Y_test, Y_prediction_knn))"
]
},
{
"cell_type": "code",
"execution_count": 91,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Accuracy Score')"
]
},
"execution_count": 91,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#KNN \n",
"#Testing other number of neighbors\n",
"\n",
"scores = []\n",
"\n",
"#loop appends the accuracy score gained after testing each number of k from 1,31\n",
"for i in range(1,31):\n",
" knn = KNeighborsClassifier(n_neighbors=i)\n",
" knn.fit(X_train, Y_train)\n",
" y_pred = knn.predict(X_test)\n",
" scores.append(accuracy_score(Y_test, y_pred))\n",
"\n",
"\n",
"\n",
"#plotting a graph of the accuracy scores at each number of K\n",
"plt.plot([i for i in range(1, 31)], scores)\n",
"plt.xlabel('Neighbours (K)')\n",
"plt.ylabel('Accuracy Score')"
]
},
{
"cell_type": "code",
"execution_count": 92,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0.9051079024996118, 0.9085700978108988, 0.9191429902189101, 0.9226828132277596, 0.9279459711224964, 0.9209129017233348, 0.9261760596180716, 0.9261915851575843, 0.9314702685918336, 0.9261915851575843, 0.9297003570874087, 0.9314702685918336, 0.9332401800962584, 0.935010091600683, 0.9297314081664337, 0.9297469337059463, 0.9297469337059463, 0.9315013196708586, 0.9297314081664337, 0.9244837758112094, 0.929762459245459, 0.9227138643067846, 0.9227293898462972, 0.9192050923769601, 0.9209594783418723, 0.9174351808725353, 0.9192050923769601, 0.915680794907623, 0.9174351808725353, 0.915680794907623]\n"
]
},
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Cross_val score')"
]
},
"execution_count": 92,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"#KNN cross validation\n",
"\n",
"lrscores = []\n",
"\n",
"for i in range(1,31):\n",
" knn3 = KNeighborsClassifier(n_neighbors=i)\n",
" scores2 = cross_val_score(knn3,X,Y,cv=5,scoring='accuracy')\n",
" lrscores.append(scores2.mean())\n",
" \n",
"print(lrscores)\n",
"\n",
"plt.plot([i for i in range(1, 31)], lrscores)\n",
"plt.xlabel('Neighbours (K)')\n",
"plt.ylabel('Cross_val score')"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}