立即注册找回密码

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

手机动态码快速登录

手机号快速注册登录

搜索

图文播报

查看: 69|回复: 0

RDKit | 分子处理入门

[复制链接]
发表于 2024-9-26 18:02 | 显示全部楼层 |阅读模式

登陆有奖并可浏览互动!

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录 手机动态码快速登录

×
导入库

from rdkit import Chem
from rdkit.Chem import AllChem
from rdkit.Chem.Draw import IPythonConsole
from rdkit.Chem.Draw.MolDrawing import MolDrawing, DrawingOptions 修改分子默认显示
DrawingOptions.bondLineWidth=1.8 smiles转换为分子对象
mol = Chem.MolFromSmiles('CC(C)Cc1ccc(cc1)C(C)C(=O)O')显示分子2D结构
mol

mol.GetNumAtoms()15
print (Chem.MolToMolBlock(mol)) RDKit          2D
15 15  0  0  0  0  0  0  0  0999 V2000
    5.2500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.0000   -2.5981    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.0000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7500    1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.7500    1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.0000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.7500    1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.0000   -2.5981    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   -5.2500   -1.2990    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  1  0
  2  3  1  0
  2  4  1  0
  4  5  1  0
  5  6  2  0
  6  7  1  0
  7  8  2  0
  8  9  1  0
  9 10  2  0
  8 11  1  0
11 12  1  0
11 13  1  0
13 14  2  0
13 15  1  0
10  5  1  0
M  END
DrawingOptions.includeAtomNumbers=True
mol
molH = AllChem.AddHs(mol)
DrawingOptions.includeAtomNumbers=False
molH

显示原子坐标
print (Chem.MolToMolBlock(molH)) RDKit          2D

33 33  0  0  0  0  0  0  0  0999 V2000
    4.5000   -1.5000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.5000    1.5000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.0000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7500    1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.7500    1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.0000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.0000    1.5000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -4.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -5.2500   -1.2990    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   -5.2500    1.2990    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    4.5000   -3.0000    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    6.0000   -1.5000    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    3.6209   -1.6080    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    6.0000    0.0000    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    4.5000    3.0000    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    6.0000    1.5000    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    3.6209    1.6080    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    2.8920   -0.8791    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    2.8920    0.8791    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.5000   -2.5981    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.5000   -2.5981    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.1929    2.0661    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.5000    2.5981    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -3.0000   -1.5000    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -3.0000    3.0000    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -4.4554    1.8630    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -2.1406    1.7143    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -6.7500    1.2990    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  1  0
  2  3  1  0
  2  4  1  0
  4  5  1  0
  5  6  2  0
  6  7  1  0
  7  8  2  0
  8  9  1  0
  9 10  2  0
  8 11  1  0
11 12  1  0
11 13  1  0
13 14  2  0
13 15  1  0
10  5  1  0
  1 16  1  0
  1 17  1  0
  1 18  1  0
  2 19  1  0
  3 20  1  0
  3 21  1  0
  3 22  1  0
  4 23  1  0
  4 24  1  0
  6 25  1  0
  7 26  1  0
  9 27  1  0
10 28  1  0
11 29  1  0
12 30  1  0
12 31  1  0
12 32  1  0
15 33  1  0
M  END
molH.GetNumAtoms()33
计算TPSA

Chem.rdMolDescriptors.CalcTPSA(molH)37.3
保存分子属性为pickle格式
import pickle
pickle.dump(molH, open(&#39;molH.pkl&#39;,&#39;wb&#39;))<hr/>
<hr/>


DrugAI

原文地址:https://zhuanlan.zhihu.com/p/82497166
楼主热帖
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册 微信登录 手机动态码快速登录

本版积分规则

关闭

官方推荐 上一条 /3 下一条

快速回复 返回列表 客服中心 搜索 官方QQ群 洽谈合作
快速回复返回顶部 返回列表