diff --git a/python/CDD_ML_Part_4_Acetylcholinesterase_Regression_Random_Forest.ipynb b/python/CDD_ML_Part_4_Acetylcholinesterase_Regression_Random_Forest.ipynb new file mode 100644 index 0000000..edd3a3d --- /dev/null +++ b/python/CDD_ML_Part_4_Acetylcholinesterase_Regression_Random_Forest.ipynb @@ -0,0 +1,1617 @@ +{ + "nbformat": 4, + "nbformat_minor": 0, + "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.7.6" + }, + "colab": { + "name": "CDD-ML-Part-4-Acetylcholinesterase-Regression-Random-Forest.ipynb", + "provenance": [], + "collapsed_sections": [] + } + }, + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "id": "7AAfh_j7hSwQ", + "colab_type": "text" + }, + "source": [ + "# **Bioinformatics Project - Computational Drug Discovery [Part 4] Comparing Classifiers for Building Classification Models**\n", + "\n", + "Chanin Nantasenamat\n", + "\n", + "[*'Data Professor' YouTube channel*](http://youtube.com/dataprofessor)\n", + "\n", + "In this Jupyter notebook, we will be building a real-life **data science project** that you can include in your **data science portfolio**. Particularly, we will be building a machine learning model using the ChEMBL bioactivity data.\n", + "\n", + "In **Part 4**, we will be building a regression model of acetylcholinesterase inhibitors using the random forest algorithm.\n", + "\n", + "---" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "jw7MqTMphSwR", + "colab_type": "text" + }, + "source": [ + "## **1. Import libraries**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "D3rFTNAIhSwS", + "colab_type": "code", + "colab": {} + }, + "source": [ + "import pandas as pd\n", + "import seaborn as sns\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.ensemble import RandomForestRegressor" + ], + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "0GvT3PArhSwX", + "colab_type": "text" + }, + "source": [ + "## **2. Load the data set**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "043mRJZIhSwY", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 289 + }, + "outputId": "96bc783e-89f4-4013-dc58-376965a73425" + }, + "source": [ + "! wget https://github.com/dataprofessor/data/raw/master/acetylcholinesterase_06_bioactivity_data_3class_pIC50_pubchem_fp.csv" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "stream", + "text": [ + "--2020-07-01 12:24:14-- https://github.com/dataprofessor/data/raw/master/acetylcholinesterase_06_bioactivity_data_3class_pIC50_pubchem_fp.csv\n", + "Resolving github.com (github.com)... 140.82.112.4\n", + "Connecting to github.com (github.com)|140.82.112.4|:443... connected.\n", + "HTTP request sent, awaiting response... 302 Found\n", + "Location: https://raw.githubusercontent.com/dataprofessor/data/master/acetylcholinesterase_06_bioactivity_data_3class_pIC50_pubchem_fp.csv [following]\n", + "--2020-07-01 12:24:15-- https://raw.githubusercontent.com/dataprofessor/data/master/acetylcholinesterase_06_bioactivity_data_3class_pIC50_pubchem_fp.csv\n", + "Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.0.133, 151.101.64.133, 151.101.128.133, ...\n", + "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.0.133|:443... connected.\n", + "HTTP request sent, awaiting response... 200 OK\n", + "Length: 8363909 (8.0M) [text/plain]\n", + "Saving to: ‘acetylcholinesterase_06_bioactivity_data_3class_pIC50_pubchem_fp.csv’\n", + "\n", + "acetylcholinesteras 100%[===================>] 7.98M 18.2MB/s in 0.4s \n", + "\n", + "2020-07-01 12:24:15 (18.2 MB/s) - ‘acetylcholinesterase_06_bioactivity_data_3class_pIC50_pubchem_fp.csv’ saved [8363909/8363909]\n", + "\n" + ], + "name": "stdout" + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "cSgppzqPiR0G", + "colab_type": "code", + "colab": {} + }, + "source": [ + "df = pd.read_csv('acetylcholinesterase_06_bioactivity_data_3class_pIC50_pubchem_fp.csv')" + ], + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "kuiiC0xthSwb", + "colab_type": "text" + }, + "source": [ + "## **3. Input features**\n", + "The ***Acetylcholinesterase*** data set contains 881 input features and 1 output variable (pIC50 values)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "iCeQQn0uhSwb", + "colab_type": "text" + }, + "source": [ + "### **3.1. Input features**" + ] + }, + { + "cell_type": "code", + "metadata": { + "scrolled": true, + "id": "li32nAPohSwc", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 439 + }, + "outputId": "e3cbf177-e82b-4e57-c32a-af9ab924dda8" + }, + "source": [ + "X = df.drop('pIC50', axis=1)\n", + "X" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "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", + " \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", + " \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", + " \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", + " \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", + " \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", + " \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", + " \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", + " \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", + " \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", + " \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", + " \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", + "
PubchemFP0PubchemFP1PubchemFP2PubchemFP3PubchemFP4PubchemFP5PubchemFP6PubchemFP7PubchemFP8PubchemFP9PubchemFP10PubchemFP11PubchemFP12PubchemFP13PubchemFP14PubchemFP15PubchemFP16PubchemFP17PubchemFP18PubchemFP19PubchemFP20PubchemFP21PubchemFP22PubchemFP23PubchemFP24PubchemFP25PubchemFP26PubchemFP27PubchemFP28PubchemFP29PubchemFP30PubchemFP31PubchemFP32PubchemFP33PubchemFP34PubchemFP35PubchemFP36PubchemFP37PubchemFP38PubchemFP39...PubchemFP841PubchemFP842PubchemFP843PubchemFP844PubchemFP845PubchemFP846PubchemFP847PubchemFP848PubchemFP849PubchemFP850PubchemFP851PubchemFP852PubchemFP853PubchemFP854PubchemFP855PubchemFP856PubchemFP857PubchemFP858PubchemFP859PubchemFP860PubchemFP861PubchemFP862PubchemFP863PubchemFP864PubchemFP865PubchemFP866PubchemFP867PubchemFP868PubchemFP869PubchemFP870PubchemFP871PubchemFP872PubchemFP873PubchemFP874PubchemFP875PubchemFP876PubchemFP877PubchemFP878PubchemFP879PubchemFP880
01110000001111011101000000000000001000100...0000000000000000000000000000000000000000
11110000001111011001110000000000000000000...0000000000000000000000000000000000000000
21110000001111011101000011000000001000100...0000000000000000000000000000000000000000
31100000001111011101000011000000001000100...0000000000000000000000000000000000000000
41100000001110011101100011000000001000000...0000000000000000000000000000000000000000
......................................................................................................................................................................................................................................................
46901111000001111011001100000000000000000100...0000000000000000000000000000000000000000
46911111000001111011001100000000000000000100...0000000000000000000000000000000000000000
46921111000001111011001100000000000000000000...0000000000000000000000000000000000000000
46931111000001111011001110000000000000000000...0000000000000000000000000000000000000000
46941111000001111111001100000000000000000000...0000000000000000000000000000000000000000
\n", + "

4695 rows × 881 columns

\n", + "
" + ], + "text/plain": [ + " PubchemFP0 PubchemFP1 ... PubchemFP879 PubchemFP880\n", + "0 1 1 ... 0 0\n", + "1 1 1 ... 0 0\n", + "2 1 1 ... 0 0\n", + "3 1 1 ... 0 0\n", + "4 1 1 ... 0 0\n", + "... ... ... ... ... ...\n", + "4690 1 1 ... 0 0\n", + "4691 1 1 ... 0 0\n", + "4692 1 1 ... 0 0\n", + "4693 1 1 ... 0 0\n", + "4694 1 1 ... 0 0\n", + "\n", + "[4695 rows x 881 columns]" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 9 + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "sGQjCQtfhSwg", + "colab_type": "text" + }, + "source": [ + "### **3.2. Output features**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "OWylAtAVhSwh", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 221 + }, + "outputId": "5747e12a-3abb-4e43-fc1c-c8dbe42f3992" + }, + "source": [ + "Y = df.pIC50\n", + "Y" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "0 6.124939\n", + "1 7.000000\n", + "2 4.301030\n", + "3 6.522879\n", + "4 6.096910\n", + " ... \n", + "4690 5.612610\n", + "4691 5.595166\n", + "4692 5.419075\n", + "4693 5.460924\n", + "4694 5.555955\n", + "Name: pIC50, Length: 4695, dtype: float64" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 10 + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "E-zGSqXohSwx", + "colab_type": "text" + }, + "source": [ + "### **3.3. Let's examine the data dimension**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "nhT04XtLhSwx", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 34 + }, + "outputId": "0e36315c-a8c1-4d11-8e99-8a92038ff80d" + }, + "source": [ + "X.shape" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(4695, 881)" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 11 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "uzQlK8gNhSw0", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 34 + }, + "outputId": "6526f2b6-8875-49f4-bd38-dc2db7225e52" + }, + "source": [ + "Y.shape" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(4695,)" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 12 + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "0qQCpX097qf_", + "colab_type": "text" + }, + "source": [ + "### **3.4. Remove low variance features**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "rjHK2SoI7tXI", + "colab_type": "code", + "colab": {} + }, + "source": [ + "from sklearn.feature_selection import VarianceThreshold\n", + "selection = VarianceThreshold(threshold=(.8 * (1 - .8))) \n", + "X = selection.fit_transform(X)" + ], + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "id": "nXcpQh_s8nx7", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 34 + }, + "outputId": "cb3a135a-9b96-4f69-bb28-538ae4be7d5d" + }, + "source": [ + "X.shape" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(4695, 137)" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 14 + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "AjhOlkOVhSxR", + "colab_type": "text" + }, + "source": [ + "## **4. Data split (80/20 ratio)**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "M1Bmg1HWhSxR", + "colab_type": "code", + "colab": {} + }, + "source": [ + "X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.2)" + ], + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "id": "uz1o3c1LhSxU", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 34 + }, + "outputId": "dc0b23f3-eebc-4159-ae71-6d9e27ce9e26" + }, + "source": [ + "X_train.shape, Y_train.shape" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "((3756, 137), (3756,))" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 16 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "4tnwDASChSxW", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 34 + }, + "outputId": "15c12f57-053b-4e28-afe1-b403510fd6ea" + }, + "source": [ + "X_test.shape, Y_test.shape" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "((939, 137), (939,))" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 17 + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "PYsE-tIAhSw3", + "colab_type": "text" + }, + "source": [ + "## **5. Building a Regression Model using Random Forest**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "YHM3DCD5wuNe", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 34 + }, + "outputId": "42a4752a-c4ea-414d-ac19-dff9c64cfbcb" + }, + "source": [ + "model = RandomForestRegressor(n_estimators=100)\n", + "model.fit(X_train, Y_train)\n", + "r2 = model.score(X_test, Y_test)\n", + "r2" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "0.5404672128298216" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 18 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "A4Rv5wdQ1M6H", + "colab_type": "code", + "colab": {} + }, + "source": [ + "Y_pred = model.predict(X_test)" + ], + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "LoLgjePyUXcv", + "colab_type": "text" + }, + "source": [ + "## **6. Scatter Plot of Experimental vs Predicted pIC50 Values**" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "hfqpfjxw3IAK", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 361 + }, + "outputId": "7206a3c7-eff9-4617-e9d9-d54dd0cfd29c" + }, + "source": [ + "import seaborn as sns\n", + "import matplotlib.pyplot as plt\n", + "\n", + "sns.set(color_codes=True)\n", + "sns.set_style(\"white\")\n", + "\n", + "ax = sns.regplot(Y_test, Y_pred, scatter_kws={'alpha':0.4})\n", + "ax.set_xlabel('Experimental pIC50', fontsize='large', fontweight='bold')\n", + "ax.set_ylabel('Predicted pIC50', fontsize='large', fontweight='bold')\n", + "ax.set_xlim(0, 12)\n", + "ax.set_ylim(0, 12)\n", + "ax.figure.set_size_inches(5, 5)\n", + "plt.show" + ], + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 35 + }, + { + "output_type": "display_data", + "data": { + "image/png": "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ZtqI6mc+8xne//7385vf/Ib3v//9/N//+3+nekkSiUQyYfSpXgBAf38/27dv53vf+x4AV155JXfeeScDAwPU1taO+VjXdQHo6uo64euUSCSnDyVNKWlMpUwLUe3s7KSxsRFN0wDQNI1Zs2bR2dk5rqj29vYCcP3115/wdUokktOP3t5e5s+fX/H100JUj4czzjiD+++/n4aGhrIoSyQSyfHiui69vb2cccYZE3rctBDV5uZmuru7cV0XTdNwXZeenh6am5vHfWwwGOTcc889CauUSCSnGxPZoZaYFomquro6Vq5cyf/8z/8A8D//8z+sXLly3KO/RCKRTDcU3/f9qV4EwN69e7ntttsYGhqiqqqKu+66i0WLFk31siQSiWRCTBtRlUgkklOBaXH8l0gkklMFKaoSiUQyiUhRlUgkkklEiqpEIpFMIjNaVGeqCcvg4CAf+tCHuPzyy3n3u9/N//7f/5uBgYGpXtaEuPfee1m+fDm7du2a6qVURKFQ4DOf+QyXXXYZ7373u/n0pz891UuqmM2bN3PNNddw9dVXc9VVV/H4449P9ZJG5a677mLDhg1H/LuYCe/T0dZ+zO9TfwZz4403+g8//LDv+77/8MMP+zfeeOMUr6gyBgcH/Weffbb8/b/+67/6t99++xSuaGJs27bNv+mmm/yLL77Y37lz51QvpyLuvPNO/1/+5V98z/N83/f93t7eKV5RZXie55977rnl3/OOHTv8devW+a7rTvHKjuSFF17wOzo6jvh3MRPep6Ot/VjfpzN2p1oyYbnyyisBYcKyffv2GbHji8fjnH/++eXv161bR0dHxxSuqHIsy+KOO+7gs5/97FQvpWIymQwPP/ww//iP/4iiKADU19dP8aoqR1VVUqkUAKlUilmzZqGq0++te+655x7RBTlT3qejrf1Y36fTok31WDgeE5bphOd5/PjHP2bDhg1TvZSKuOeee7jqqquYO3fuVC+lYtra2ojH49x7770899xzRCIR/vEf/3FGtDcrisLdd9/NRz/6UcLhMJlMhu985ztTvayKOR3fp9Pv4+4048477yQcDnPDDTdM9VLGZevWrWzbto33v//9U72UCeG6Lm1tbaxatYqNGzdy66238rGPfYx0Oj3VSxsXx3H49re/zTe+8Q02b97MN7/5TW655RYymcxUL+20YiLv0xkrqsNNWIAJmbBMF+666y4OHDjA3XffPS2Pc4fzwgsvsHfvXi655BI2bNhAV1cXN910E7///e+nemlj0tzcjK7r5SPo2rVrqampobW1dYpXNj47duygp6eHc845B4BzzjmHUCjE3r17p3hllXE6vk+n/zv5KMx0E5avfvWrbNu2ja9//esEAoGpXk5FfPjDH+b3v/89mzZtYtOmTTQ1NfHd736Xt73tbVO9tDGpra3l/PPP55lnngFENrq/v/+YHIhONk1NTXR1dbFv3z5AeGT09/czb968KV5ZZZyO79MZ3fs/U01Ydu/ezZVXXsmCBQsIBoMAzJ07l69//etTvLKJsWHDBr71rW+xbNmyqV7KuLS1tfHP//zPJBIJdF3nlltu4aKLLprqZVXEL3/5S/7jP/6jnGT7h3/4B97xjndM8aqO5HOf+xyPP/44fX191NTUEI/HefTRR2fE+3S0td99993H9D6d0aIqkUgk040Ze/yXSCSS6YgUVYlEIplEpKhKJBLJJCJFVSKRSCYRKaoSiUQyiUhRlZw0nnvuOZYvX87y5ct57rnnpno5J4SNGzeWf8b29vapXo5kCpixvf+nM7fddhsPPfTQqPddcsklfOMb3zjJK6qMaDTK2rVry19PR2688Uaef/55zjvvPO67776pXg4g6oEPHTrEnDlz2LRp04j7nn76aX7yk5/w2muvkUgkqK6uZuHChVxxxRXllsqx/r089dRTNDU1lb//2c9+xn333Udra2t5/PvHP/7xGVGLPF2QojrDWbly5YhOj4ULF07hao6OZVmsXr2aBx54YKqXcspwxx13cP/99wOg6zpz587Ftm1efPFF3njjjSP61BsbG0cIKDDi3843vvEN7rnnHkAUuScSCTZt2sRzzz3Hz372MxYvXnyCf6JThBNiTig5oXzyk5/0ly1b5i9btsxva2sb9Zof//jH/rJly/wVK1b4L7zwgu/7vv/SSy/5K1as8JctW+Z///vfH/FcF198sf/EE0/473znO/3Vq1f7V155pf+73/1uxHMePHjQ/8QnPuFfcMEF/qpVq/y3v/3t/uc+9zk/lUqVr3nwwQfLa/v1r3/t//Vf/7W/evVq/3vf+57/7LPPlu8r+VQOv+3BBx/0P/jBD/pnnnmmf/nll/tbtmzx29ra/Jtuuslfu3atf+mll/q/+MUvRqypv7/f/+xnP+uv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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "tags": [] + } + } + ] + } + ] +} \ No newline at end of file