{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "

\n", "Classification of Breast Cancer Data \n", "
\n", "

" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "Breast Cancer Analysis

\n", "\n", "https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer/." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "Importing the Necessary Libraries

" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "from sklearn.metrics import accuracy_score\n", "from sklearn.metrics import confusion_matrix \n", "from sklearn.metrics import classification_report \n", "from sklearn.model_selection import train_test_split\n", "from sklearn.tree import DecisionTreeClassifier\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.neighbors import KNeighborsClassifier\n", "from sklearn.svm import SVC\n", "from sklearn.naive_bayes import GaussianNB\n", "from sklearn.ensemble import RandomForestClassifier\n", "import matplotlib.pyplot as plt\n", "from imblearn.over_sampling import SMOTE\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "Creating a Pandas DataFrame from a CSV file

\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
no-recurrence-events30-39premeno30-340-2no3leftleft_lowno.1
0no-recurrence-events40-49premeno20-240-2no2rightright_upno
1no-recurrence-events40-49premeno20-240-2no2leftleft_lowno
2no-recurrence-events60-69ge4015-190-2no2rightleft_upno
3no-recurrence-events40-49premeno0-40-2no2rightright_lowno
4no-recurrence-events60-69ge4015-190-2no2leftleft_lowno
\n", "
" ], "text/plain": [ " no-recurrence-events 30-39 premeno 30-34 0-2 no 3 left left_low \\\n", "0 no-recurrence-events 40-49 premeno 20-24 0-2 no 2 right right_up \n", "1 no-recurrence-events 40-49 premeno 20-24 0-2 no 2 left left_low \n", "2 no-recurrence-events 60-69 ge40 15-19 0-2 no 2 right left_up \n", "3 no-recurrence-events 40-49 premeno 0-4 0-2 no 2 right right_low \n", "4 no-recurrence-events 60-69 ge40 15-19 0-2 no 2 left left_low \n", "\n", " no.1 \n", "0 no \n", "1 no \n", "2 no \n", "3 no \n", "4 no " ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data = pd.read_csv('./breast-cancer.csv')\n", "data.head()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Breast Cancer Data Description

\n", "
\n", "This breast cancer domain was obtained from the University Medical Centre, Institute of Oncology, Ljubljana, Yugoslavia. Thanks go to M. Zwitter and M. Soklic for providing the data.

\n", "Let's now add column labels to all columns in the data." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Classagemenopausetumor-sizeinv-nodesnode-capsdeg-maligbreastbreast-quadirradiat
0no-recurrence-events40-49premeno20-240-2no2rightright_upno
1no-recurrence-events40-49premeno20-240-2no2leftleft_lowno
2no-recurrence-events60-69ge4015-190-2no2rightleft_upno
3no-recurrence-events40-49premeno0-40-2no2rightright_lowno
4no-recurrence-events60-69ge4015-190-2no2leftleft_lowno
\n", "
" ], "text/plain": [ " Class age menopause tumor-size inv-nodes node-caps \\\n", "0 no-recurrence-events 40-49 premeno 20-24 0-2 no \n", "1 no-recurrence-events 40-49 premeno 20-24 0-2 no \n", "2 no-recurrence-events 60-69 ge40 15-19 0-2 no \n", "3 no-recurrence-events 40-49 premeno 0-4 0-2 no \n", "4 no-recurrence-events 60-69 ge40 15-19 0-2 no \n", "\n", " deg-malig breast breast-quad irradiat \n", "0 2 right right_up no \n", "1 2 left left_low no \n", "2 2 right left_up no \n", "3 2 right right_low no \n", "4 2 left left_low no " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_index = [ 'Class', 'age','menopause','tumor-size','inv-nodes','node-caps','deg-malig','breast','breast-quad','irradiat']\n", "data.columns = data_index\n", "data.head()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Data Variables

\n", "
Each row in data.csv contains an individual case of a woman with breastcancer. There are 285 cases in this data set. The data set is available from UCI repository (http://archive.ics.uci.edu/ml/datasets/Breast+Cancer)
\n", "\n", "
\n", "Each row, or sample consists of the following attributes:\n", "* **1. Age:** age (in years at last birthday) of the patient at the time of diagnosis;\n", "* **2. Menopause:** whether the patient is pre- or postmenopausal at time of diagnosis; \n", "* **3. Tumor size:** the greatest diameter (in mm) of the excised tumor; \n", "* **4. Inv-nodes:** the number (range 0 - 39) of axillary lymph nodes that contain metastatic breast cancer visible on histological examination;\n", "* **5. Node caps:** if the cancer does metastasise to a lymph node, although outside the original site of the tumor it may remain “contained” by the capsule of the lymph node. However, over time, and with more aggressive disease, the tumor may replace the lymph node and then penetrate the capsule, allowing it to invade the surrounding tissues; (yes = 1, no = 0)\n", "* **6. Degree of malignancy:** the histological grade (range 1-3) of the tumor. Tumors that are grade 1 predominantly consist of cells that, while neoplastic, retain many of their usual characteristics. Grade 3 tumors predominately consist of cells that are highly abnormal; \n", "* **7. Breast:** breast cancer may obviously occur in either breast(left = 1, right = 2)\n", "* **8. Breast quadrant:** the breast may be divided into four quadrants, using the nipple as a central point;(left_up = 1, left_low = 2, right_up = 3, right_low = 4, central = 5)\n", "* **9. Irradiation:** radiation therapy is a treatment that uses high-energy x-rays to destroy cancer cells.(yes = 1, no = 0) \n", "\n" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "##### data\n", "#data[data['breast-quad'].str.contains('left') & data['breast'].str.contains('right')]\n", "#data.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Find any null variables if they exist" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Classagemenopausetumor-sizeinv-nodesnode-capsdeg-maligbreastbreast-quadirradiat
\n", "
" ], "text/plain": [ "Empty DataFrame\n", "Columns: [Class, age, menopause, tumor-size, inv-nodes, node-caps, deg-malig, breast, breast-quad, irradiat]\n", "Index: []" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data[data.isnull().any(axis = 1)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "Cleaning and Preparing the Data

\n", "
\n", "Binarize node-caps & irradiat columns" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Classagemenopausetumor-sizeinv-nodesnode-capsdeg-maligbreastbreast-quadirradiat
0044.512210223.00
1044.512210212.00
2064.521710221.00
3044.51210224.00
4064.521710212.00
\n", "
" ], "text/plain": [ " Class age menopause tumor-size inv-nodes node-caps deg-malig \\\n", "0 0 44.5 1 22 1 0 2 \n", "1 0 44.5 1 22 1 0 2 \n", "2 0 64.5 2 17 1 0 2 \n", "3 0 44.5 1 2 1 0 2 \n", "4 0 64.5 2 17 1 0 2 \n", "\n", " breast breast-quad irradiat \n", "0 2 3.0 0 \n", "1 1 2.0 0 \n", "2 2 1.0 0 \n", "3 2 4.0 0 \n", "4 1 2.0 0 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "CleanData = data.copy()\n", "\n", "#Binarize node-caps & irradiat& Class\n", "CleanData['node-caps']= (CleanData['node-caps']=='yes').astype(int)\n", "CleanData['irradiat']= (CleanData['irradiat']=='yes').astype(int)\n", "CleanData['Class']= (CleanData['Class']=='recurrence-events').astype(int)\n", "\n", "CleanData.head()\n", "\n", "#Convert *Breast Quadrant* string descriptive Information into number.\n", "#Create a Dictionary of the mapping & Replace Values\n", "quad = {'left_up':1, 'left_low': 2, 'right_up':3, 'right_low':4, 'central':5} \n", "CleanData = CleanData.replace({'breast-quad': quad})\n", "CleanData['breast-quad'] = CleanData['breast-quad'].apply(pd.to_numeric, downcast='float', errors='coerce')\n", "CleanData[CleanData.isnull().any(axis = 1)]\n", "CleanData = CleanData.dropna()\n", "CleanData.head()\n", "\n", "\n", "#Convert *Breast* string descriptive Information into number (Left = 1, Right = 2)\n", "#Create a Dictionary of the mapping & Replace Values\n", "breast = {'left':1, 'right':2} \n", "CleanData = CleanData.replace({'breast': breast})\n", "CleanData.head()\n", "\n", "#Convert *menopause* string descriptive Information into number.\n", "#Create a Dictionary of the mapping & Replace Values\n", "menopause = {'premeno':1, 'ge40': 2, 'lt40':3} \n", "CleanData = CleanData.replace({'menopause': menopause})\n", "CleanData.head()\n", "\n", "\n", "#Convert 'inv-nodes' to the median of its average range.\n", "nodes = {'0-2':1, '3-5':4,'6-8':7,'9-11':10, '12-14':13,'15-17':16,'18-20':19,'21-23':22,'24-26':25,'27-29':28,'30-32':31,'33-35':34,\n", " '36-38':37,'39':39}\n", "CleanData = CleanData.replace({'inv-nodes': nodes})\n", "(CleanData['inv-nodes'].describe)\n", "\n", "\n", "#Convert age to the numerical average of its average range.\n", "age = {'20-29':24.5, '30-39':34.5,'40-49':44.5,'50-59':54.5, '60-69':64.5,'70-79':74.5,'80-89':84.5,'90-99':94.5}\n", "CleanData = CleanData.replace({'age': age})\n", "CleanData.head()\n", "\n", ",\n", "#Convert tumor-size to the numerical average of its average range.\n", "Tumor = {'0-4':2, '5-9':7,'10-14':12,'15-19':17, '20-24':22,'25-29':27,'30-34':32,'35-39':37,'40-44':42,'45-49':47,'50-54':52}\n", "CleanData = CleanData.replace({'tumor-size': Tumor})\n", "CleanData.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "Data Visualisation

\n", "
\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Class\n", "0 [[AxesSubplot(0.125,0.670278;0.215278x0.209722...\n", "1 [[AxesSubplot(0.125,0.670278;0.215278x0.209722...\n", "dtype: object" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "CleanData.groupby('Class').hist(figsize=(10, 10))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "********************** Commence Classification Task****************************

\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We aim to classify patient data by the Class of Recurrence Event vs Non-Recurrence Events. This target variable is stored in 'y'.\n", "\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "Output=CleanData['Class']\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dtype('int32')" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Output.dtype\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "Use Cancer Characteristics & other gynechological details to predict

the possibility of Breast Cancer Recurrence in Women. \n", "

\n" ] }, { "cell_type": "code", "execution_count": 81, "metadata": {}, "outputs": [], "source": [ "features_list = ['age','menopause','tumor-size','inv-nodes','node-caps','deg-malig']" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [], "source": [ "features = CleanData[features_list]\n" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
agemenopausetumor-sizeinv-nodesnode-capsdeg-malig
044.5122102
144.5122102
264.5217102
344.512102
464.5217102
\n", "
" ], "text/plain": [ " age menopause tumor-size inv-nodes node-caps deg-malig\n", "0 44.5 1 22 1 0 2\n", "1 44.5 1 22 1 0 2\n", "2 64.5 2 17 1 0 2\n", "3 44.5 1 2 1 0 2\n", "4 64.5 2 17 1 0 2" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "features.head()" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 0\n", "1 0\n", "2 0\n", "3 0\n", "4 0\n", "Name: Class, dtype: int32" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Output.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "Perform Test and Train split\n", "\n", "

\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## REMINDER: Training Phase\n", "\n", "In the **training phase**, the learning algorithm uses the training data to adjust the model’s parameters to minimize errors. At the end of the training phase, you get the trained model.\n", "\n", "\n", "
\n", "In the **testing phase**, the trained model is applied to test data. Test data is separate from the training data, and is previously unseen by the model. The model is then evaluated on how it performs on the test data. The goal in building a classifier model is to have the model perform well on training as well as test data.\n" ] }, { "cell_type": "code", "execution_count": 106, "metadata": {}, "outputs": [], "source": [ "features_train, features_test, Output_train, Output_test = train_test_split(features, Output, test_size = 0.33, random_state = 324)\n" ] }, { "cell_type": "code", "execution_count": 96, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number instances in features_train dataset: (198, 6)\n", "Number instances in Output_train dataset: (198,)\n", "Number instances in features_test dataset: (86, 6)\n", "Number instances in Output_test dataset: (86,)\n" ] } ], "source": [ "print(\"Number instances in features_train dataset: \", features_train.shape)\n", "print(\"Number instances in Output_train dataset: \", Output_train.shape)\n", "print(\"Number instances in features_test dataset: \", features_test.shape)\n", "print(\"Number instances in Output_test dataset: \", Output_test.shape)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "SMOTE Technique to address Data Imbalance\n", "\n", "

" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Before OverSampling, counts of Recurrent Class '1': 53\n", "Before OverSampling, counts of No-Recurrent Class '0': 137 \n", "\n" ] } ], "source": [ "print(\"Before OverSampling, counts of Recurrent Class '1': {}\".format(sum(Output_train==1)))\n", "print(\"Before OverSampling, counts of No-Recurrent Class '0': {} \\n\".format(sum(Output_train==0)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Resampling using SMOTE" ] }, { "cell_type": "code", "execution_count": 97, "metadata": {}, "outputs": [], "source": [ "sm = SMOTE(random_state=2)\n", "features_train_res, Output_train_res = sm.fit_sample(features_train, Output_train)" ] }, { "cell_type": "code", "execution_count": 98, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "After OverSampling, the shape of features_X: (286, 6)\n", "After OverSampling, the shape of Output_y: (286,) \n", "\n", "After OverSampling, counts of Recurrent Class '1': 143\n", "After OverSampling, counts of Non-Recurrent Class '0': 143\n" ] } ], "source": [ "print('After OverSampling, the shape of features_X: {}'.format(features_train_res.shape))\n", "print('After OverSampling, the shape of Output_y: {} \\n'.format(Output_train_res.shape))\n", "\n", "print(\"After OverSampling, counts of Recurrent Class '1': {}\".format(sum(Output_train_res==1)))\n", "print(\"After OverSampling, counts of Non-Recurrent Class '0': {}\".format(sum(Output_train_res==0)))" ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "age float64\n", "menopause int64\n", "tumor-size int64\n", "inv-nodes int64\n", "node-caps int32\n", "deg-malig int64\n", "dtype: object" ] }, "execution_count": 100, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Check features of the training and testing sets.\n", "\n", "#type(features_train)\n", "features_train.dtypes\n", "#type(features_test)\n", "#type(Output_train)\n", "#Output_train.dtype\n", "#type(Output_test)\n", "#features_train.describe()\n", "#Output_train.describe()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "Fit on Train Set\n", "

\n" ] }, { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "GaussianNB(priors=None)" ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Trying Different Types of Classifiers\n", "#1.Decision Tree Classifier\n", "#recurrence_classifier = DecisionTreeClassifier(max_leaf_nodes=19, random_state=0)\n", "\n", "#2. Logistic Regression\n", "#recurrence_classifier = LogisticRegression(random_state = 0)\n", "\n", "#3. K-Nearest Neighbours\n", "#recurrence_classifier = KNeighborsClassifier(n_neighbors = 3, metric = 'minkowski', p = 2)\n", "\n", "#4.Support Vector Classification\n", "#recurrence_classifier = SVC(kernel = 'linear', random_state = 0)\n", "\n", "#4.Gaussian Naïve Bayes Algorithm\n", "recurrence_classifier = GaussianNB()\n", "\n", "#5.Random Forest Algorithm\n", "#recurrence_classifier = RandomForestClassifier(n_estimators = 10, criterion = 'entropy', random_state = 0)\n", "\n", "#****************************FITTING CLASSIFIER ON TRAINING SET******************************\n", "recurrence_classifier.fit(features_train_res, Output_train_res)" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "sklearn.naive_bayes.GaussianNB" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(recurrence_classifier)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "Predict on Test Set \n", "\n", "

\n" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [], "source": [ "ModelPredictions = recurrence_classifier.predict(features_test)" ] }, { "cell_type": "code", "execution_count": 103, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0, 1, 0, 0, 1, 0, 0, 1, 0, 0])" ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ModelPredictions[:10]" ] }, { "cell_type": "code", "execution_count": 104, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "53 0\n", "231 1\n", "200 1\n", "8 0\n", "62 0\n", "26 0\n", "11 0\n", "155 0\n", "36 0\n", "31 0\n", "Name: Class, dtype: int32" ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Indicator_test['high_humidity_label'][:10]\n", "Output_test.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "


\n", "\n", "Measure Accuracy of the Classifier\n", "

\n" ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " 0 0.74 0.81 0.77 57\n", " 1 0.54 0.45 0.49 29\n", "\n", "avg / total 0.67 0.69 0.68 86\n", "\n" ] } ], "source": [ "#Model Accuracy per different Algorithms:\n", "\n", "\n", "#1.#Decscion Tree Classifier: 64.27%\n", "#2.#Logistic Regression: 73.17%\n", "#3.#KNearest Neighbour: 67.54%%\n", "#4.#Support Vector Machine Model (SVC): 70%\n", "#5.#Gaussian Naive Bayes Algorithm: 73.17%\n", "#6. #Random Forest Classifier: 70.21%\n", "\n", "accuracy_score(y_true = Output_test, y_pred = ModelPredictions)\n", "confusion_matrix(y_true = Output_test, y_pred = ModelPredictions)\n", "print(classification_report(y_true = Output_test, y_pred = ModelPredictions))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "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.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }