rdkit入门
Python中的RDkit包,是將化學與機器學習聯系起來的、非常實用的庫。可以在很多種化學文件如mol2,mol,Smiles,sdf等之間互相轉化,并能將其展示成2D、3D等形式供開發人員使用。
1.生成描述:2D分子
from rdkit.Chem import AllChem import rdkit.Chem from rdkit.Chem import Drawtemplate = rdkit.Chem.MolFromSmiles('COc1cccc2cc(C(=O)NCCCCN3CCN(c4cccc5nccnc54)CC3)oc21') tmp=AllChem.Compute2DCoords(template) Draw.MolToFile(template,'1.png')2.最大公共子結構
它返回一個MCSResult實例,其中包含有關MCS中原子和鍵數的信息,與已識別的MCS匹配的SMARTS字符串,以及一個表示算法是否超時的標志。如果沒有找到MCS,則原子和鍵的數量設置為0,SMARTS設置為''。
from rdkit.Chem import AllChem import rdkit.Chem from rdkit.Chem import Drawfrom rdkit.Chem import rdFMCS mol1 = rdkit.Chem.MolFromSmiles("O=C(NCc1cc(OC)c(O)cc1)CCCC/C=C/C(C)C") mol2 = rdkit.Chem.MolFromSmiles("CC(C)CCCCCC(=O)NCC1=CC(=C(C=C1)O)OC") mol3 = rdkit.Chem.MolFromSmiles("c1(C=O)cc(OC)c(O)cc1") mols = [mol1,mol2,mol3] res=rdFMCS.FindMCS(mols) print(res) print(res.numAtoms)print(res.numBonds)print(res.smartsString) print(res.canceled)總結
- 上一篇: 设计师不可错过的2022年设计类网站大搜
- 下一篇: 用Python筛选国考职位表