RDKit|分子子结构的删除、替换与切割

本文介绍了使用RDKit在Python中对分子进行子结构删除、替换和切割的操作,包括删除子结构、替换子结构、切掉侧链、切掉母核以及其他分子切分方法,如BRICS和Recap算法。详细阐述了相关函数的使用和示例。
摘要由CSDN通过智能技术生成

分子子结构操作

RDKit包含了一些修改分子的函数,这些函数可以方便地对分子进行子结构删除/替换等操作。更复杂的操作可以看Chemical Reactions中相关的功能。

1.删除子结构

  • 先初始化一下
    定义一个苯丙氨酸分子,要把苯甲基删掉,变成甘氨酸
>>> from rdkit import Chem
>>> from rdkit.Chem import AllChem, Draw
>>> m = Chem.MolFromSmiles('OC(=O)C(N)Cc1ccccc1')
>>> m = Chem.MolFromSmiles('c1ccccc1CC(N)C(=O)O')
>>> patt = Chem.MolFromSmarts('Cc1ccccc1')
  • 查看patt是否在m中:GetSubstructMatches()
    返回值是原分子中与子结构匹配的原子索引
>>> matches = m.GetSubstructMatches(patt)
>>> matches
((6, 5, 4, 3, 2, 1, 0),)
  • 查看分子及高亮显示子结构
>>> Draw.MolToImage(m, (250,250), highlightAtoms=matches[0])

1

  • 删除子结构:DeleteSubstructs(mol, query, onlyFrags, useChirality)
    mol: 要操作的mol对象
    query: 要操作的子结构
    onlyFrags: 默认False,
RDKit是一种常用的分子仿真、分析和可视化工具,它可以对化学分子进行多种操作和计算。其中包括基于片段的分子生成,这也是RDKit在药物发现和化学合成中的一个重要应用。 基于片段的分子生成是指根据已知的分子结构中所包含的骨架a和骨架b,生成与之相似但不完全相同的化合物。这种方法可以用于研究药物分子结构的多样性、发现药物活性的结构相关性,以及优化化合物的代谢性质、药效学性质等。 具体来说,基于片段的分子生成一般分为两个步骤。首先,需要对已知的骨架a和骨架b进行分段,得到不同的化学片段。然后,根据这些片段的性质和结构,结合组成分子的其他原子和键,利用相应的算法和软件程序生成相似的化合物。这些化合物可以通过计算化学性质、分析构效关系等方法进行进一步的研究和优化。 RDKit提供了一系列用于基于片段的分子生成的工具和函数,如MolFragmenter,MolStandardize,MolInterchange等。这些工具可以高效地对分子进行分段、生成相似分子、处理化学反应等操作,加速药物发现和化学研究的过程。同时,RDKit还支持多种化学文件格式、API接口、可视化效果等,方便用户使用和操作。 总之,基于片段的分子生成是RDKit在药物发现和化学合成领域中的重要应用之一。它为研究药物结构、优化化合物性质、设计新的药物分子等方面提供了有效的工具和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值