{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "from rdkit import Chem\n", "from rdkit.Chem import AllChem\n", "from rdkit.Chem import DataStructs\n", "from rdkit.Chem import Draw\n", "from rdkit.Chem.Draw import IPythonConsole\n", "import numpy as np\n", "import pandas as pd" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "df = pd.read_csv(\"bace.csv\")" ] }, { "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", "
molCIDClassModelpIC50MWAlogPHBAHBDRB...PEOE6 (PEOE6)PEOE7 (PEOE7)PEOE8 (PEOE8)PEOE9 (PEOE9)PEOE10 (PEOE10)PEOE11 (PEOE11)PEOE12 (PEOE12)PEOE13 (PEOE13)PEOE14 (PEOE14)canvasUID
0O1CC[C@@H](NC(=O)[C@@H](Cc2cc3cc(ccc3nc2N)-c2c...BACE_11Train9.154901431.569794.4014325...53.20571178.640335226.85541107.4349137.1338460.07.980170.00.01
\n", "

1 rows × 595 columns

\n", "
" ], "text/plain": [ " mol CID Class Model \\\n", "0 O1CC[C@@H](NC(=O)[C@@H](Cc2cc3cc(ccc3nc2N)-c2c... BACE_1 1 Train \n", "\n", " pIC50 MW AlogP HBA HBD RB ... PEOE6 (PEOE6) \\\n", "0 9.154901 431.56979 4.4014 3 2 5 ... 53.205711 \n", "\n", " PEOE7 (PEOE7) PEOE8 (PEOE8) PEOE9 (PEOE9) PEOE10 (PEOE10) \\\n", "0 78.640335 226.85541 107.43491 37.133846 \n", "\n", " PEOE11 (PEOE11) PEOE12 (PEOE12) PEOE13 (PEOE13) PEOE14 (PEOE14) \\\n", "0 0.0 7.98017 0.0 0.0 \n", "\n", " canvasUID \n", "0 1 \n", "\n", "[1 rows x 595 columns]" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(1)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "mols = [Chem.MolFromSmiles(smi) for smi in df.mol]\n", "fps = [AllChem.GetMorganFingerprintAsBitVect(mol,2, nBits=1024) for mol in mols]\n", "pIC50 = [i for i in df.pIC50]" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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Tg6SH7179wYAT0/PSjtjfHx88+bNAcDExISutZmSkuLl5UXf7vT09Pz9/QWtqoKFokRfqiM5OZkeX/BiSR/z8+fPf/TokTyshFBpcnOjo6O7crnw+nWb1NSziYnrMjJu0qlgL17UfvvWzt//7cyZZPNmcuIEefSI7NpF7twhPXqQ//1P1qGXYu/evcLXDEdyqIjPj8/LC4uM3LVr15w5cwYMGGBpaamqqqqmppaVlZWamnpI+HS//+rXrx8AzJs3T7yJrR8/kpYtSceORYmJIp5o/vz5AGYAU0aPniN6eEgkN2+SZs0SdtlyuRAd3eXbtyXPnhl+/TojPn7l+/d93r8vtYODxyP16hEAEhRUmeGK6smTJykpKbKOQgEoduI+bNgwANi7d69ku9ME5f79+xUbVWliYmLo4GBzc/N58+aFhobSr//48WPv3r09evTgcDg0T2Kz2U5OTh07dqTt8WLdl1Flev/+PV1Oq5zL6IglNTWVXhu6urpz586lQ13ZbLanp+dvLesxMTGCd8IXIi85XaNGDQaDYWtrq6mpOXToUJmveyADOTlZV9Y9ecLhcuH5c+Nv3/769GlscvK+1NSTiYmbcnJKrX585AgBIHXqkEpsDRBDYGDg/8r3VpGfnx8YGPj48eMy64UjiR1MSDiXnLzh69fp798PfPXK9skTay53yM6dUIympiYABAUFNW7cuIw5psXExsayWCwlJaWJEycCwMSJE8UIKy4urE8fL5HnSNDuPg0NDawNUpHevSN9+9JuviIn+/g431evrGgHYGSkUkzM4KdPdbhcyMsrtWD0wYMEgJiayuM9KiEhQcQruZpT7MR948aN5WnvHDduHPyzHLS0PXr0yNDQEADatGlDz6ujo/Pby2VqamrxNvjatWurqqqW80GLpI0uaGJnZ1eZ2W1OTs6AAQMEMw67du36spS1NOjjk24jypFprm9gYNCtWzcAqI51A2/dIo0aETW16Ku1P34c+vmzJ5fLjIxUff++25cvk7hc+Pp1Zmm7FhURW1sCQObNq8yIRfXx48eOHTtKPMxp3759lpaWgsYFKysrDw8PPz+/kJAQbCerQNvj4i78+DHq7VtrLteay23D5fZ68WLB9evjxo1bvXp1cHDwkydPNm3aBADq6uoLFy6k+XFUVFSZR166dCkADB06lK4PL+5g4k+fPrVu3VqU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\n", "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Draw.MolsToGridImage(mols[:10], legends=[\"pIC50 \"+str(i) for i in pIC50[:10]], molsPerRow=5)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "X = []\n", "for fp in fps:\n", " arr = np.zeros((1,))\n", " DataStructs.ConvertToNumpyArray(fp, arr)\n", " X.append(arr)\n", "X = np.array(X)\n", "y = np.array(pIC50)\n", "y_bin = np.asarray(y>7, dtype=np.int)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(range(len(y_bin)), y_bin)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "from sklearn.model_selection import StratifiedKFold\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.svm import SVC\n", "from sklearn.naive_bayes import GaussianNB\n", "from sklearn.metrics import accuracy_score, balanced_accuracy_score, confusion_matrix\n", "from sklearn.decomposition import PCA\n", "from xgboost import XGBClassifier\n", "from mlxtend.classifier import StackingClassifier\n", "from mlxtend.plotting import plot_decision_regions\n", "from mlxtend.plotting import plot_confusion_matrix\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "x_train, x_test, y_train, y_test = train_test_split(X,y_bin, test_size=0.2)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "clf1 = RandomForestClassifier(random_state=794)\n", "clf2 = GaussianNB()\n", "clf3 = XGBClassifier(random_state=0)\n", "clf4 = SVC(random_state=0)\n", "clflist = [\"RF\", \"GNB\", \"XGB\", \"SVC\", \"SCLF\"]\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "sclf = StackingClassifier(classifiers=[clf1,clf2,clf3], meta_classifier=clf4)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "skf = StratifiedKFold(n_splits=5)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "round 0\n", "RF\n", "accuracy 0.8148148148148148\n", "balanced accuracy 0.8026786943947115\n", "====================\n", "round 0\n", "GNB\n", "accuracy 0.6625514403292181\n", "balanced accuracy 0.680450351191296\n", "====================\n", "round 0\n", "XGB\n", "accuracy 0.8271604938271605\n", "balanced accuracy 0.8136275995042005\n", "====================\n", "round 0\n", "SVC\n", "accuracy 0.7325102880658436\n", "balanced accuracy 0.7072717256576229\n", "====================\n", "round 0\n", "SCLF\n", "accuracy 0.8148148148148148\n", "balanced accuracy 0.8026786943947115\n", "====================\n", "round 1\n", "RF\n", "accuracy 0.7603305785123967\n", "balanced accuracy 0.7534683684794672\n", "====================\n", "round 1\n", "GNB\n", "accuracy 0.640495867768595\n", "balanced accuracy 0.6634988901220866\n", "====================\n", "round 1\n", "XGB\n", "accuracy 0.8140495867768595\n", "balanced accuracy 0.8127081021087681\n", "====================\n", "round 1\n", "SVC\n", "accuracy 0.756198347107438\n", "balanced accuracy 0.7414678135405106\n", "====================\n", "round 1\n", "SCLF\n", "accuracy 0.7603305785123967\n", "balanced accuracy 0.7534683684794672\n", "====================\n", "round 2\n", "RF\n", "accuracy 0.7768595041322314\n", "balanced accuracy 0.7640122086570478\n", "====================\n", "round 2\n", "GNB\n", "accuracy 0.6942148760330579\n", "balanced accuracy 0.714414539400666\n", "====================\n", "round 2\n", "XGB\n", "accuracy 0.8347107438016529\n", "balanced accuracy 0.8300499445061044\n", "====================\n", "round 2\n", "SVC\n", "accuracy 0.7975206611570248\n", "balanced accuracy 0.7792730299667037\n", "====================\n", "round 2\n", "SCLF\n", "accuracy 0.7768595041322314\n", "balanced accuracy 0.7640122086570478\n", "====================\n", "round 3\n", "RF\n", "accuracy 0.7975206611570248\n", "balanced accuracy 0.7948806881243063\n", "====================\n", "round 3\n", "GNB\n", "accuracy 0.6735537190082644\n", "balanced accuracy 0.6970726970033296\n", "====================\n", "round 3\n", "XGB\n", "accuracy 0.8016528925619835\n", "balanced accuracy 0.7975166481687015\n", "====================\n", "round 3\n", "SVC\n", "accuracy 0.7603305785123967\n", "balanced accuracy 0.7482658157602664\n", "====================\n", "round 3\n", "SCLF\n", "accuracy 0.7975206611570248\n", "balanced accuracy 0.7948806881243063\n", "====================\n", "round 4\n", "RF\n", "accuracy 0.8132780082987552\n", "balanced accuracy 0.8085084033613446\n", "====================\n", "round 4\n", "GNB\n", "accuracy 0.6639004149377593\n", "balanced accuracy 0.6891806722689076\n", "====================\n", "round 4\n", "XGB\n", "accuracy 0.8298755186721992\n", "balanced accuracy 0.828641456582633\n", "====================\n", "round 4\n", "SVC\n", "accuracy 0.7468879668049793\n", "balanced accuracy 0.731232492997199\n", "====================\n", "round 4\n", "SCLF\n", "accuracy 0.8132780082987552\n", "balanced accuracy 0.8085084033613446\n", "====================\n" ] } ], "source": [ "for j, (train_idx,test_idx) in enumerate(skf.split(x_train, y_train)):\n", " for i, clf in enumerate([clf1, clf2, clf3, clf4, sclf]):\n", " clf.fit(x_train[train_idx],y_train[train_idx])\n", " ypred = clf.predict(x_train[test_idx])\n", " acc = accuracy_score(y_train[test_idx], ypred)\n", " b_acc = balanced_accuracy_score(y_train[test_idx], ypred)\n", " print(\"round {}\".format(j))\n", " print(clflist[i])\n", " print(\"accuracy {}\".format(acc))\n", " print(\"balanced accuracy {}\".format(b_acc))\n", " print(\"=\"*20)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(
,\n", " )" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ypred = sclf.predict(x_test)\n", "plot_confusion_matrix(confusion_matrix(y_test, ypred))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "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.6" } }, "nbformat": 4, "nbformat_minor": 2 }