{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Example lactam analysis using a single cores on a very large dataset."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from rdkit import Chem\n",
    "from rdkit.Chem.Draw import IPythonConsole\n",
    "IPythonConsole.ipython_useSVG=True\n",
    "from rdkit.Chem.rdRGroupDecomposition import RGroupDecomposition\n",
    "import pandas as pd\n",
    "from rdkit.Chem import PandasTools\n",
    "from IPython.display import HTML\n",
    "from rdkit import rdBase\n",
    "rdBase.DisableLog(\"rdApp.debug\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "[encoded data, 12020 characters]\n",
      "image/svg+xml": [
       "<?xml version='1.0' encoding='iso-8859-1'?>\n",
       "<svg version='1.1' baseProfile='full'\n",
       "              xmlns='http://www.w3.org/2000/svg'\n",
       "                      xmlns:rdkit='http://www.rdkit.org/xml'\n",
       "                      xmlns:xlink='http://www.w3.org/1999/xlink'\n",
       "                  xml:space='preserve'\n",
       "width='450px' height='150px' viewBox='0 0 450 150'>\n",
       "<!-- END OF HEADER -->\n",
       "<rect style='opacity:1.0;fill:#FFFFFF;stroke:none' width='450' height='150' x='0' y='0'> </rect>\n",
       "<path class='bond-0' d='M 187.399,127.778 L 190.341,112.69' style='fill:none;fill-rule:evenodd;stroke:#FF0000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-0' d='M 190.341,112.69 L 193.283,97.6027' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-0' d='M 180.116,126.357 L 183.058,111.27' style='fill:none;fill-rule:evenodd;stroke:#FF0000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-0' d='M 183.058,111.27 L 186,96.1824' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-1' d='M 189.641,96.8925 L 168.913,66.1218' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-13' d='M 189.641,96.8925 L 202.57,88.1829' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-13' d='M 202.57,88.1829 L 215.5,79.4733' style='fill:none;fill-rule:evenodd;stroke:#0000FF;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-2' d='M 168.913,66.1218 L 151.714,62.7679' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-2' d='M 151.714,62.7679 L 134.514,59.414' style='fill:none;fill-rule:evenodd;stroke:#191919;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-3' d='M 168.913,66.1218 L 199.684,45.3935' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-4' d='M 199.684,45.3935 L 207.966,57.6883' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-4' d='M 207.966,57.6883 L 216.248,69.9832' style='fill:none;fill-rule:evenodd;stroke:#0000FF;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-14' d='M 199.684,45.3935 L 206.251,31.9493' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-14' d='M 206.251,31.9493 L 212.818,18.5051' style='fill:none;fill-rule:evenodd;stroke:#CCCC00;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-5' d='M 225.324,75.8237 L 241.374,74.711' style='fill:none;fill-rule:evenodd;stroke:#0000FF;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-5' d='M 241.374,74.711 L 257.424,73.5983' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-6' d='M 257.424,73.5983 L 278.153,104.369' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-9' d='M 257.424,73.5983 L 273.708,40.2617' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-9' d='M 253.2,65.341 L 264.598,42.0054' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-7' d='M 278.153,104.369 L 271.535,117.917' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-7' d='M 271.535,117.917 L 264.917,131.465' style='fill:none;fill-rule:evenodd;stroke:#FF0000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-8' d='M 278.409,108.07 L 294.04,106.987' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-8' d='M 294.04,106.987 L 309.671,105.903' style='fill:none;fill-rule:evenodd;stroke:#FF0000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-8' d='M 277.896,100.668 L 293.527,99.5842' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-8' d='M 293.527,99.5842 L 309.158,98.5006' style='fill:none;fill-rule:evenodd;stroke:#FF0000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-10' d='M 273.708,40.2617 L 290.508,39.0971' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-10' d='M 290.508,39.0971 L 307.307,37.9324' style='fill:none;fill-rule:evenodd;stroke:#191919;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-11' d='M 273.708,40.2617 L 252.98,9.49098' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-12' d='M 252.98,9.49098 L 236.622,10.625' style='fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path class='bond-12' d='M 236.622,10.625 L 220.264,11.759' style='fill:none;fill-rule:evenodd;stroke:#CCCC00;stroke-width:2.0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1' />\n",
       "<path  class='atom-0' d='M 177.717 133.338\n",
       "Q 177.717 130.815, 178.964 129.405\n",
       "Q 180.21 127.995, 182.54 127.995\n",
       "Q 184.87 127.995, 186.117 129.405\n",
       "Q 187.363 130.815, 187.363 133.338\n",
       "Q 187.363 135.89, 186.102 137.344\n",
       "Q 184.84 138.784, 182.54 138.784\n",
       "Q 180.225 138.784, 178.964 137.344\n",
       "Q 177.717 135.905, 177.717 133.338\n",
       "M 182.54 137.597\n",
       "Q 184.143 137.597, 185.004 136.528\n",
       "Q 185.879 135.445, 185.879 133.338\n",
       "Q 185.879 131.275, 185.004 130.236\n",
       "Q 184.143 129.182, 182.54 129.182\n",
       "Q 180.937 129.182, 180.062 130.221\n",
       "Q 179.201 131.26, 179.201 133.338\n",
       "Q 179.201 135.46, 180.062 136.528\n",
       "Q 180.937 137.597, 182.54 137.597\n",
       "' fill='#FF0000'/>\n",
       "<path  class='atom-3' d='M 130.516 57.8484\n",
       "L 132.06 56.2753\n",
       "L 130.012 55.8597\n",
       "L 130.323 54.8061\n",
       "L 132.208 55.7559\n",
       "L 131.941 53.693\n",
       "L 133.054 53.6782\n",
       "L 132.742 55.741\n",
       "L 134.657 54.8506\n",
       "L 134.983 55.8597\n",
       "L 132.906 56.2456\n",
       "L 134.39 57.8335\n",
       "L 133.484 58.4865\n",
       "L 132.46 56.5276\n",
       "L 131.422 58.4865\n",
       "L 130.516 57.8484\n",
       "' fill='#191919'/>\n",
       "<path  class='atom-5' d='M 218.089 70.9107\n",
       "L 221.532 76.4759\n",
       "Q 221.874 77.025, 222.423 78.0193\n",
       "Q 222.972 79.0136, 223.002 79.073\n",
       "L 223.002 70.9107\n",
       "L 224.397 70.9107\n",
       "L 224.397 81.4178\n",
       "L 222.957 81.4178\n",
       "L 219.262 75.3332\n",
       "Q 218.831 74.6208, 218.371 73.8046\n",
       "Q 217.926 72.9884, 217.793 72.7361\n",
       "L 217.793 81.4178\n",
       "L 216.427 81.4178\n",
       "L 216.427 70.9107\n",
       "L 218.089 70.9107\n",
       "' fill='#0000FF'/>\n",
       "<path  class='atom-8' d='M 248.082 132.512\n",
       "L 249.506 132.512\n",
       "L 249.506 136.978\n",
       "L 254.879 136.978\n",
       "L 254.879 132.512\n",
       "L 256.303 132.512\n",
       "L 256.303 143.019\n",
       "L 254.879 143.019\n",
       "L 254.879 138.166\n",
       "L 249.506 138.166\n",
       "L 249.506 143.019\n",
       "L 248.082 143.019\n",
       "L 248.082 132.512\n",
       "' fill='#FF0000'/>\n",
       "<path  class='atom-8' d='M 257.045 137.735\n",
       "Q 257.045 135.212, 258.292 133.803\n",
       "Q 259.539 132.393, 261.869 132.393\n",
       "Q 264.199 132.393, 265.445 133.803\n",
       "Q 266.692 135.212, 266.692 137.735\n",
       "Q 266.692 140.288, 265.43 141.742\n",
       "Q 264.169 143.182, 261.869 143.182\n",
       "Q 259.553 143.182, 258.292 141.742\n",
       "Q 257.045 140.303, 257.045 137.735\n",
       "M 261.869 141.995\n",
       "Q 263.471 141.995, 264.332 140.926\n",
       "Q 265.208 139.843, 265.208 137.735\n",
       "Q 265.208 135.673, 264.332 134.634\n",
       "Q 263.471 133.58, 261.869 133.58\n",
       "Q 260.266 133.58, 259.39 134.619\n",
       "Q 258.529 135.658, 258.529 137.735\n",
       "Q 258.529 139.858, 259.39 140.926\n",
       "Q 260.266 141.995, 261.869 141.995\n",
       "' fill='#FF0000'/>\n",
       "<path  class='atom-9' d='M 310.342 101.833\n",
       "Q 310.342 99.31, 311.589 97.9001\n",
       "Q 312.835 96.4903, 315.165 96.4903\n",
       "Q 317.495 96.4903, 318.742 97.9001\n",
       "Q 319.988 99.31, 319.988 101.833\n",
       "Q 319.988 104.385, 318.727 105.84\n",
       "Q 317.465 107.279, 315.165 107.279\n",
       "Q 312.85 107.279, 311.589 105.84\n",
       "Q 310.342 104.4, 310.342 101.833\n",
       "M 315.165 106.092\n",
       "Q 316.768 106.092, 317.629 105.024\n",
       "Q 318.504 103.94, 318.504 101.833\n",
       "Q 318.504 99.77, 317.629 98.7312\n",
       "Q 316.768 97.6775, 315.165 97.6775\n",
       "Q 313.562 97.6775, 312.687 98.7163\n",
       "Q 311.826 99.7552, 311.826 101.833\n",
       "Q 311.826 103.955, 312.687 105.024\n",
       "Q 313.562 106.092, 315.165 106.092\n",
       "' fill='#FF0000'/>\n",
       "<path  class='atom-11' d='M 308.74 36.5234\n",
       "L 310.283 34.9503\n",
       "L 308.235 34.5348\n",
       "L 308.547 33.4811\n",
       "L 310.431 34.4309\n",
       "L 310.164 32.3681\n",
       "L 311.277 32.3532\n",
       "L 310.966 34.4161\n",
       "L 312.88 33.5256\n",
       "L 313.207 34.5348\n",
       "L 311.129 34.9206\n",
       "L 312.613 36.5086\n",
       "L 311.708 37.1616\n",
       "L 310.684 35.2026\n",
       "L 309.645 37.1616\n",
       "L 308.74 36.5234\n",
       "' fill='#191919'/>\n",
       "<path  class='atom-13' d='M 213 15.6631\n",
       "Q 213.118 15.7076, 213.608 15.9154\n",
       "Q 214.098 16.1232, 214.632 16.2567\n",
       "Q 215.181 16.3755, 215.715 16.3755\n",
       "Q 216.71 16.3755, 217.288 15.9006\n",
       "Q 217.867 15.4108, 217.867 14.5649\n",
       "Q 217.867 13.9861, 217.57 13.63\n",
       "Q 217.288 13.2738, 216.843 13.0809\n",
       "Q 216.398 12.8879, 215.656 12.6653\n",
       "Q 214.721 12.3834, 214.157 12.1162\n",
       "Q 213.608 11.8491, 213.207 11.2852\n",
       "Q 212.822 10.7212, 212.822 9.77144\n",
       "Q 212.822 8.45064, 213.712 7.63441\n",
       "Q 214.617 6.81818, 216.398 6.81818\n",
       "Q 217.615 6.81818, 218.995 7.39696\n",
       "L 218.654 8.53968\n",
       "Q 217.392 8.02026, 216.443 8.02026\n",
       "Q 215.419 8.02026, 214.855 8.45064\n",
       "Q 214.291 8.86617, 214.306 9.59335\n",
       "Q 214.306 10.1573, 214.588 10.4986\n",
       "Q 214.884 10.84, 215.3 11.0329\n",
       "Q 215.73 11.2258, 216.443 11.4484\n",
       "Q 217.392 11.7452, 217.956 12.042\n",
       "Q 218.52 12.3388, 218.921 12.9473\n",
       "Q 219.336 13.5409, 219.336 14.5649\n",
       "Q 219.336 16.0193, 218.357 16.8058\n",
       "Q 217.392 17.5775, 215.775 17.5775\n",
       "Q 214.84 17.5775, 214.127 17.3698\n",
       "Q 213.43 17.1768, 212.599 16.8355\n",
       "L 213 15.6631\n",
       "' fill='#CCCC00'/>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x7fb31aac7120>"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "core = Chem.MolFromSmiles('O=C1C([*])C2N1C(C(O)=O)=C([*])CS2')\n",
    "core"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To use RGroupDecomposition:\n",
    "  \n",
    "  1. construct the class on the core rg = RGroupDecomposition(core)\n",
    "  2. Call rg.Add( mol ) on the molecules.  If this returns -1, the molecule is not\n",
    "     compatible with the core\n",
    "  3. After all molecules are added, call rg.Process() to complete the rgroup\n",
    "     decomposition."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "RDKit ERROR: [20:17:28] SMILES Parse Error: syntax error while parsing: CANONICAL_SMILES\n",
      "RDKit ERROR: [20:17:28] SMILES Parse Error: Failed parsing SMILES 'CANONICAL_SMILES' for input: 'CANONICAL_SMILES'\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Added 1194 to RGroup Decomposition out of 4340\n"
     ]
    }
   ],
   "source": [
    "rg = RGroupDecomposition(core)\n",
    "\n",
    "mols = []\n",
    "count = 0\n",
    "for line in open(\"compounds.txt\"):\n",
    "    sm = line.split()[-1]\n",
    "    m = Chem.MolFromSmiles(sm)\n",
    "    if m:\n",
    "        count += 1\n",
    "        idx = rg.Add(m)\n",
    "rg.Process()\n",
    "print (\"Added %s to RGroup Decomposition out of %s\"%(idx, count))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It is useful to disable logging here.  When making RGroup renderings there \n",
    "are a lot of sanitization warnings."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "from rdkit import RDLogger\n",
    "RDLogger.DisableLog(\"rdApp.*\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The RGroupDecomposition code is quite compatible with the python pandas integration.\n",
    "Calling rg.GetRGroupsAsColumns() can be sent directly into a pandas table.\n",
    "\n",
    "**n.b.** You need to call PandasTools.ChangeMoleculeRendering(frame) to allow the molecules\n",
    "to be rendered properly."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "frame = pd.DataFrame(rg.GetRGroupsAsColumns())\n",
    "PandasTools.ChangeMoleculeRendering(frame)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true
   },
   "source": [
    "Just show the first few (for speed and to keep the notebook small)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Core</th>\n",
       "      <th>R1</th>\n",
       "      <th>R2</th>\n",
       "      <th>R3</th>\n",
       "      <th>R4</th>\n",
       "      <th>R5</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 11788 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 9524 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 8552 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAABmJLR0QA/wD/AP+gvaeTAAACFElEQVR4nO3SwQ3AIBDAsNL9dz6WIEJC9gR5ZM3MB6f9twN4k7FIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLxAYhCgSN2aqNlwAAADx6VFh0cmRraXRQS0wgcmRraXQgMjAyMS4wMy4xZGV2MQAAeJx7v2/tPQYg4AFiRgZU0MDILcIgjhAVAwCZsgQUCV+6MgAAAEV6VFh0TU9MIHJka2l0IDIwMjEuMDMuMWRldjEAAHic41IAgSAX78wSBTgwcuHiUlAwwIMsLS0VwowMDAy4fBUUXP1cuACrtwvutKwHFQAAACR6VFh0U01JTEVTIHJka2l0IDIwMjEuMDMuMWRldjEAAHicAwAAAAABZyADbwAAAABJRU5ErkJggg==\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 5396 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,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\" alt=\"Mol\"/></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 11788 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 9568 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 9896 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAABmJLR0QA/wD/AP+gvaeTAAACFElEQVR4nO3SwQ3AIBDAsNL9dz6WIEJC9gR5ZM3MB6f9twN4k7FIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLxAYhCgSN2aqNlwAAADx6VFh0cmRraXRQS0wgcmRraXQgMjAyMS4wMy4xZGV2MQAAeJx7v2/tPQYg4AFiRgZU0MDILcIgjhAVAwCZsgQUCV+6MgAAAEV6VFh0TU9MIHJka2l0IDIwMjEuMDMuMWRldjEAAHic41IAgSAX78wSBTgwcuHiUlAwwIMsLS0VwowMDAy4fBUUXP1cuACrtwvutKwHFQAAACR6VFh0U01JTEVTIHJka2l0IDIwMjEuMDMuMWRldjEAAHicAwAAAAABZyADbwAAAABJRU5ErkJggg==\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 5396 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,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\" alt=\"Mol\"/></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 11788 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 9568 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 8604 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAABmJLR0QA/wD/AP+gvaeTAAACFElEQVR4nO3SwQ3AIBDAsNL9dz6WIEJC9gR5ZM3MB6f9twN4k7FIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLxAYhCgSN2aqNlwAAADx6VFh0cmRraXRQS0wgcmRraXQgMjAyMS4wMy4xZGV2MQAAeJx7v2/tPQYg4AFiRgZU0MDILcIgjhAVAwCZsgQUCV+6MgAAAEV6VFh0TU9MIHJka2l0IDIwMjEuMDMuMWRldjEAAHic41IAgSAX78wSBTgwcuHiUlAwwIMsLS0VwowMDAy4fBUUXP1cuACrtwvutKwHFQAAACR6VFh0U01JTEVTIHJka2l0IDIwMjEuMDMuMWRldjEAAHicAwAAAAABZyADbwAAAABJRU5ErkJggg==\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 5396 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,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\" alt=\"Mol\"/></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 11788 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 9564 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 8516 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAABmJLR0QA/wD/AP+gvaeTAAACFElEQVR4nO3SwQ3AIBDAsNL9dz6WIEJC9gR5ZM3MB6f9twN4k7FIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLxAYhCgSN2aqNlwAAADx6VFh0cmRraXRQS0wgcmRraXQgMjAyMS4wMy4xZGV2MQAAeJx7v2/tPQYg4AFiRgZU0MDILcIgjhAVAwCZsgQUCV+6MgAAAEV6VFh0TU9MIHJka2l0IDIwMjEuMDMuMWRldjEAAHic41IAgSAX78wSBTgwcuHiUlAwwIMsLS0VwowMDAy4fBUUXP1cuACrtwvutKwHFQAAACR6VFh0U01JTEVTIHJka2l0IDIwMjEuMDMuMWRldjEAAHicAwAAAAABZyADbwAAAABJRU5ErkJggg==\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 5396 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,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\" alt=\"Mol\"/></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 11788 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 9568 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 8412 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAABmJLR0QA/wD/AP+gvaeTAAACFElEQVR4nO3SwQ3AIBDAsNL9dz6WIEJC9gR5ZM3MB6f9twN4k7FIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLhLFIGIuEsUgYi4SxSBiLxAYhCgSN2aqNlwAAADx6VFh0cmRraXRQS0wgcmRraXQgMjAyMS4wMy4xZGV2MQAAeJx7v2/tPQYg4AFiRgZU0MDILcIgjhAVAwCZsgQUCV+6MgAAAEV6VFh0TU9MIHJka2l0IDIwMjEuMDMuMWRldjEAAHic41IAgSAX78wSBTgwcuHiUlAwwIMsLS0VwowMDAy4fBUUXP1cuACrtwvutKwHFQAAACR6VFh0U01JTEVTIHJka2l0IDIwMjEuMDMuMWRldjEAAHicAwAAAAABZyADbwAAAABJRU5ErkJggg==\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,[encoded data, 5396 characters]\" alt=\"Mol\"/></td>\n",
       "      <td><img data-content=\"rdkit/molecule\" src=\"data:image/png;base64,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\" alt=\"Mol\"/></td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "f2 = pd.DataFrame(frame.head())\n",
    "PandasTools.ChangeMoleculeRendering(f2)\n",
    "HTML(f2.to_html())"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python (conda rdkit_build)",
   "language": "python",
   "name": "rdkit_build"
  },
  "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": 1
}
