总览
当使用jupyter-notebook的chemoinfomatics中使用的python模块的RDKit时,我在这里写它是因为很难构建环境。
环境
macOS Mojave版本10.12.2
建立使用RDKit的虚拟环境
根据RDKit的官方文档,创建一个可以通过
1 | conda create -c rdkit -n my-rdkit-env rdkit # my-rdkit-env は任意の環境名 |
一段时间后
1 | Proceed ([y]/n)? |
系统会询问您
,因此继续
1 | conda activate my-rdkit-env |
输入
。您应该在终端行的左侧看到
现在安装该虚拟环境所需的模块。
在这里,我们将安装经常与rdkit一起使用的
1 | pip install pubchempy |
输入
1 2 3 | >>> from rdkit import Chem >>> Chem.MolFromSmiles('C1=CC=CC=C1') # 'C1=CC=CC=C1'はbenzeneのsmiles表記 <rdkit.Chem.rdchem.Mol object at 0x109bc6030> |
如果变为
,则暂时完成虚拟环境的构建。
在jupyter-notebook中使用虚拟环境
这篇文章很容易理解,因此我将参考它。
退出python控制台
1 | $ pip install environment_kernels |
键入
并安装软件包以在Jupyter上切换内核。然后
1 | jupyter notebook --generate-config |
使用
创建jupyter配置文件。
将以下代码添加到
1 2 | c.NotebookApp.kernel_spec_manager_class = 'environment_kernels.EnvironmentKernelSpecManager' c.EnvironmentKernelSpecManager.env_dirs=['C:/Program Files/Anaconda3/envs/'] |
1 | pip install jupyter |
使用
和
安装jupyter
1 | jupyter notebook |
从
开始jupyter-notebook。
然后,您可以选择
抽苯
现在,我终于到了可以用杉杉笔记本电脑抽出苯的地步!
您可以使用以下代码制备苯。
1 2 3 4 | from rdkit import Chem from rdkit.Chem import Draw benzene = Chem.MolFromSmiles('C1=CC=CC=C1') Draw.MolToImage(benzene) |
但是,显示屏有点脏...
最初,这是一种显示多个分子的方法,但是如果使用
1 | Draw.MolsToGridImage([benzene]) |
也可以使用从
但是,通过
1 2 3 4 | import pubchempy as pcp tmp = pcp.get_compounds('benzene', 'name')[0] benzene = Chem.MolFromSmiles(tmp.isomeric_smiles) Draw.MolsToGridImage([benzene]) |
使用此方法,如果您具有化合物名称,则可以显示各种分子而无需以微笑符号指定。
1 2 3 | tmp = pcp.get_compounds('anthracene', 'name')[0] anthracene = Chem.MolFromSmiles(tmp.isomeric_smiles) Draw.MolsToGridImage([anthracene]) |
您也可以保存png文件。
但是,显示有点呆板(Chem.Draw.NolTOImage)...
您可能需要将图像保存在木星笔记本上。
1 | Draw.MolToFile(benzene, 'benzene.png') |
参考
RDKit官方文档
PubChemPy官方文档
如何在木星笔记本
中使用Anaconda创建的虚拟环境