首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >超量化合物库筛选策略–P4

超量化合物库筛选策略–P4

作者头像
DrugScience
发布于 2022-05-17 05:23:31
发布于 2022-05-17 05:23:31
48500
代码可运行
举报
文章被收录于专栏:DrugScienceDrugScience
运行总次数:0
代码可运行

上期回顾

超量化合物库筛选策略–P1

超量化合物库筛选策略–P2

超量化合物库筛选策略–P3

具体步骤

5. 对于反应物库SMARTS的更改

注:对于SMARTS不是很熟悉,所以,我在怀疑某些SMARTS写错了,从其余地方进行查找,更新了反应物的SMARTS,放在这里。

6. 使用上述反应物对已经处理好的化学反应库进行匹配

6.1 首先枚举一下共有多少种可能反应

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import rdkit
from rdkit import Chem
from rdkit.Chem import AllChem
from itertools import combinations,permutations
# 反应物
reactants= ['C(=O)[O;H,-]','[CH;D2;!$(C-[!#6;!#1])]=O','[CX4][Cl,Br,I]','[R][Cl,Br,I]','[N;H2;D1;$(N-!@[#6]);!$(N-C=[O,N,S])]','[N;H1;D2;$(N(-[#6])-[#6]);!$(N-C=[O,N,S])]']
# 反应物两两配对,这步代码后来感觉没什么用
reactants_c = list(combinations(reactants,2))

注:

  • 可产生的化学反应应该有15种,和我原来所预计的36种有所不同,不应该是直接6*6,更新一下
  • 那么可以获取的潜在化合物最多会有5607510852,简为56亿
  • 额,那我可能当时6*6搞错了,后面的计算还是按照正确的来计算的
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ('C(=O)[O;H,-]', '[CH;D2;!$(C-[!#6;!#1])]=O'),
 ('C(=O)[O;H,-]', '[CX4][Cl,Br,I]'),
 ('C(=O)[O;H,-]', '[R][Cl,Br,I]'),
 ('C(=O)[O;H,-]', '[N;H2;D1;$(N-!@[#6]);!$(N-C=[O,N,S])]'),
 ('C(=O)[O;H,-]', '[N;H1;D2;$(N(-[#6])-[#6]);!$(N-C=[O,N,S])]'),
 ('[CH;D2;!$(C-[!#6;!#1])]=O', '[CX4][Cl,Br,I]'),
 ('[CH;D2;!$(C-[!#6;!#1])]=O', '[R][Cl,Br,I]'),
 ('[CH;D2;!$(C-[!#6;!#1])]=O', '[N;H2;D1;$(N-!@[#6]);!$(N-C=[O,N,S])]'),
 ('[CH;D2;!$(C-[!#6;!#1])]=O', '[N;H1;D2;$(N(-[#6])-[#6]);!$(N-C=[O,N,S])]'),
 ('[CX4][Cl,Br,I]', '[R][Cl,Br,I]'),
 ('[CX4][Cl,Br,I]', '[N;H2;D1;$(N-!@[#6]);!$(N-C=[O,N,S])]'),
 ('[CX4][Cl,Br,I]', '[N;H1;D2;$(N(-[#6])-[#6]);!$(N-C=[O,N,S])]'),
 ('[R][Cl,Br,I]', '[N;H2;D1;$(N-!@[#6]);!$(N-C=[O,N,S])]'),
 ('[R][Cl,Br,I]', '[N;H1;D2;$(N(-[#6])-[#6]);!$(N-C=[O,N,S])]'),
 ('[N;H2;D1;$(N-!@[#6]);!$(N-C=[O,N,S])]','[N;H1;D2;$(N(-[#6])-[#6]);!$(N-C=[O,N,S])]')

6.2 对每个反应都对这些反应物进行匹配

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import rdkit
from rdkit import Chem
from rdkit.Chem import AllChem
from itertools import combinations,permutations
# 反应物
reactants= ['C(=O)[O;H,-]','[CH;D2;!$(C-[!#6;!#1])]=O','[CX4][Cl,Br,I]','[R][Cl,Br,I]','[N;H2;D1;$(N-!@[#6]);!$(N-C=[O,N,S])]','[N;H1;D2;$(N(-[#6])-[#6]);!$(N-C=[O,N,S])]']
reactants_m= [Chem.MolFromSmarts(i) for i in reactants]
# 反应物两两配对,这步代码后来感觉没什么用
reactants_c = list(combinations(reactants,2))
# 上面已经拿到了接近于1+1=2的一些合成反应,现在,我们尝试来使用reactant_l_2中合成反应来匹配一下这些反应物
reactant_l_3 = []
for i in reactant_l_2:
    #print(i)
    reactant_1=i.split('>')[0].split('.')[0]
    reactant_2=i.split('>')[0].split('.')[1]
    reactant_1_mol = Chem.MolFromSmarts(reactant_1)
    reactant_2_mol = Chem.MolFromSmarts(reactant_2)
    for x in range(len(reactants_m)):
        for y in range(len(reactants_m)):
            if x != y:
                try:
                    if reactant_1_mol.HasSubstructMatch(reactants_m[x]) and reactant_2_mol.HasSubstructMatch(reactants_m[y]):
                        reactant_l_3.append(i)
                except: pass
reactant_l_3 = list(set(reactant_l_3))
# 去除重复之后为235种反应,明天看看,有多少种可以真实反应

参考

[1] Saldivar-Gonzalez F I , CSH García, Medina-Franco J L . Chemoinformatics-based enumeration of chemical libraries: a tutorial[J]. Journal of Cheminformatics, 2020, 12(1):64. [2] https://github.com/rdkit/rdkit/blob/master/Data/Functional_Group_Hierarchy.txt [3] https://application.wiley-vch.de/contents/jc_2452/2008/f700139_s.pdf [4] https://www.oecd.org/env/ehs/risk-assessment/Tutorial_3_Automated_workflow_for_ecotoxicity.pdf [5] https://www.chem.uzh.ch/zerbe/MedChem/Medicinal_Chemistry.pdf

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-04-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DrugSci 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
超量化合物库筛选策略–P3
[1] Kearnes S M , Maser M R , Wleklinski M , et al. The Open Reaction Database[J]. 2021.
DrugScience
2022/05/17
4830
超量化合物库筛选策略–P3
超量化合物库筛选策略–P5(初步终结篇)
我也应该搞个什么,‘百亿级别的化合物筛选策略’来搞搞噱头hhh,不过其实也就是一个探索超量级别化学空间的方法,星辰大海哪有10的60次方多。
DrugScience
2022/07/27
7410
超量化合物库筛选策略–P5(初步终结篇)
RDKit:化合物亚结构(Substructure)搜索
当一个化合物合成出来之后,化学工作者常常关心的是分子中某一部分(如功能团)的有关信息,因而,亚结构(substructure)检索,从某种角度上讲,对于化学工作者来说是最为重要的手段。
DrugOne
2021/01/28
1.9K0
RDKit | 通过评估合成难度筛选化合物
无论如何获得先导化合物,评估候选先导化合物的合成难度都很重要。无论该化合物在计算机上的应用前景如何,实际上并未对其进行合成和评估。
DrugOne
2021/02/01
1.5K0
RDKit | 基于化合物结构式图像估算分子式
当通过深度学习输入有机物质中结构式的二维图像时,需要解决寻找分子式的问题。这是一个回归问题,需要计算结构式图像中包含的碳、氢、氧和氮等原子数。
DrugOne
2021/01/29
1.9K0
超量化合物库筛选策略–P2
[2] Grygorenko O O , Radchenko D S , Dziuba I , et al. Generating Multibillion Chemical Space of Readily Accessible Screening Compounds[J]. iScience, 2020, 23(11):101681.
DrugScience
2022/05/17
4610
超量化合物库筛选策略–P2
Rdkit学习-No.4-化合物库的设计-基于BRICS
BRICS provides another method for fragmenting molecules along synthetically accessible bonds
DrugScience
2021/02/04
1.2K0
RDKit | 基于Murcko骨架聚类化合物库
一种方法是使用合适的指纹技术将化合物矢量化并评估他们之间的距离。这种方法经常被使用,但是对于人类很难直观地理解化合物之间的距离。
DrugOne
2021/02/01
2.7K0
基于随机森林的化合物活性二分类模型
基于随机森林算法的化合物二分类机器学习模型 ---- 代码示例 #导入依赖包 import pandas as pd import numpy as np from rdkit import Chem, DataStructs from rdkit.Chem import AllChem from rdkit.ML.Descriptors import MoleculeDescriptors from rdkit.Chem import Descriptors from rdkit.Chem.EState
DrugOne
2021/01/28
1.3K0
RDKit:化合物骨架分析
新药研发是一项耗时长且耗资巨大的工程,据资料显示由安全性问题与药物代谢动力学性质不良引起新化学实体成药失败的比例高达60%,且这一比例还在逐年升高。代谢稳定性是影响药代动力学性质的主要因素之一,它一般用来描述化合物代谢的速度和程度,也是决定药物小分子生物利用度的一个重要因素。骨架修饰是改变代谢途径、提高代谢稳定性的重要化学结构改造策略之一,通过骨架修饰进行先导化合物优化,能够显著提高先导化合物的代谢稳定性。
DrugOne
2021/02/01
1.8K0
RDKit | 基于RDKit和SMARTS的化学反应处理
SMILES (Simplified Molecular Input Line Entry System)是一种分子描述语言,由Daylight C.I.S.的创始人 Dr. David Weininger 博士发明。它简单,易于理解,且广泛使用的分子描述方法。
DrugOne
2021/02/01
4.4K0
RDKit | 基于Ward方法对化合物进行分层聚类
通过使用Ward方法进行聚类从化合物库中选择各种化合物,Ward方法是分层聚类方法之一。
DrugOne
2021/01/29
1.8K0
RDKit | 基于Ward方法对化合物进行分层聚类
基于机器学习的化合物活性预测模型
利用化合物的结构与活性数据,基于RDKit和Python3的机器学习活性预测模型小示例。
DrugOne
2021/01/28
1.6K0
JCIM|基于相对结合自由能建模的主动学习指导先导化合物优化
2023年1月4日,来自美国卡内基梅隆大学的研究者在Journal of Chemical Information and Modeling上发表文章“Active Learning Guided Drug Design Lead Optimization Based on Relative Binding Free Energy Modeling”。
智药邦
2023/02/28
5910
JCIM|基于相对结合自由能建模的主动学习指导先导化合物优化
超量化合物库筛选策略–P1
好久不见,已变成年羹尧。这篇文章好久之前就注意到了,去年的刷了一波屏。组合化学和分子对接的交叉,看起来效果还是不错的。
DrugScience
2022/05/17
5700
超量化合物库筛选策略–P1
MCE 化合物 | MedChemExpress
BI-671800 是高特异性的、有效的前列腺素 D2 受体 (DP2/CRTH2) 的拮抗剂,其对人和小鼠 CRTH2 转染细胞中 PGD2 结合CRTH2 的 IC50 值分别为 4.5 nM 和 3.7 nM。有治疗哮喘的潜能。
MedChemExpress
2023/02/23
3280
MCE 化合物 | MedChemExpress
开源化学信息学工具包(Open Access Cheminformatics Toolkits)
CDK是结构化学信息学和生物信息学的开源Java库。 该项目由Christoph Steinbeck,Egon Willighagen与Jmol和JChemPaint的开发人员Dan Gezelter于2000年发起。迄今为止,它是在科学界广泛支持下开展的最活跃的开源化学信息学项目之一。
DrugOne
2021/02/01
2.6K0
JCIM|药物发现的超大型化合物数据集概述
2022年4月14日,美国国家癌症研究所 (NCI) 计算机辅助药物设计研究课题组的Wendy等人在JCIM杂志上发表综述,整理了当前用于药物研发的超大型数据库以及检索技术的情况。
智药邦
2022/06/08
1.4K0
JCIM|药物发现的超大型化合物数据集概述
DGL | 基于深度图学习框架DGL的分子图生成
Deep Graph Library (DGL) 是一个在图上做深度学习的框架。在0.3.1版本中,DGL支持了基于PyTorch的化学模型库。如何生成分子图是我感兴趣的。
DrugOne
2021/01/28
1.8K0
AI提高从头设计的新化合物的可合成性
本文为《Artificial Intelligence in Drug Design》一书第17章的内容,作者是来自Biogen公司生物治疗学和药物学部门的Govinda Bhisetti和Cheng Fang。
智药邦
2022/04/13
1.2K0
AI提高从头设计的新化合物的可合成性
相关推荐
超量化合物库筛选策略–P3
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档