ASKCOS
AI4Sicence研究员,如有合作请通过站内信。
展开
-
AI&化学 | 论文代码整理
Molecular Graph Enhanced Transformer for Retrosynthesis Predictionhttps://www.biorxiv.org/content/10.1101/2020.03.05.979773v2.full.pdf原创 2021-09-28 22:46:30 · 543 阅读 · 0 评论 -
chemoinformatics&python | 化学信息学软件包安装方法集合
在原有环境下使用pip和在conda里手动安装无作用正确方式:conda install -c conda-forge rdkit原创 2019-11-23 17:47:04 · 1336 阅读 · 1 评论 -
从drugbank提取药物对应的靶点和基因信息
DrugBank是一个综合性的在线数据库,它提供了关于药物的详细化学、药理、药代动力学和药物-药物相互作用的信息。这个数据库是一个宝贵的资源,广泛用于药物研究、药理学、毒理学、药物设计和个性化医疗等领域。先从下载XML文件然后使用python对文件进行处理。原创 2024-05-10 11:49:16 · 656 阅读 · 0 评论 -
构建生物医学知识图谱from zero to hero (3):生物医学命名实体识别和链接
例如,我们不希望图中有单独的实体代表抗坏血酸和维生素C,因为领域专家可以告诉你这些是同一件事。第二个原因是,通过将概念映射到目标知识库,我们可以通过从目标知识库中获取有关映射概念的信息来丰富图形模型。如果我们再次使用抗坏血酸的例子,如果我们已经知道它的CHEBI id,我们可以很容易地从CHEBI数据库中获取更多信息。在这个例子中,NLP模型在文本中识别了基因、疾病、药物、物种、突变和途径。如前所述,这个过程被称为命名实体识别。例如,在生物医学领域,我们希望在文本中识别各种基因、药物、疾病和其他概念。原创 2024-02-23 18:18:25 · 99 阅读 · 0 评论 -
构建生物医学知识图谱from zero to hero (5):关系抽取
使用此模型,必须定义要在哪些实体对之间检测关系。将使用命名实体链接的结果作为关系提取过程的输入。首先,我找到所有提到两个或多个实体的句子,然后通过关系提取模型运行它们来提取任何连接。我还定义了一个阈值0.85,这意味着如果模型以低于0.85的概率预测实体之间的链接,将忽略该预测。现在将尝试提取医学概念之间的关系。如果不希望命名实体链接取得完美的结果,那么关系提取技术肯定会出现一些错误。使用zero-shot关系提取器,可以定义要检测的关系。我还尝试了更具体的关系类型,如治疗、原因和其他,但结果并不理想。原创 2024-02-23 18:10:38 · 105 阅读 · 0 评论 -
构建生物医学知识图谱from zero to hero (2):文献抽取
我们选取一篇文献,将文献PDF转换成图片,然后采用pytesseract 实现图片文字识别。接下来对文本进行处理。原创 2024-02-23 14:22:03 · 50 阅读 · 0 评论 -
构建生物医学知识图谱from zero to hero (1): 简介
首先,由于生物医学领域的复杂性和多样性,构建全面、准确的生物医学知识图谱需要耗费大量的时间和人力成本。最后,如何将生物医学知识图谱与其他领域的知识图谱进行融合,以实现跨领域的知识推理和应用,也是当前亟待解决的问题之一。此外,随着算法的发展和开源理念的普及,越来越多的生物医学知识图谱开始采用算法驱动的方法,通过自动或半自动的方式从大量生物医学文献中抽取信息,进而构建知识图谱。随着技术的不断发展和应用的不断拓展,相信生物医学知识图谱将在未来的生物医学领域中发挥更加重要的作用。原创 2024-02-23 11:53:02 · 104 阅读 · 0 评论 -
clinicaltables | 疾病转化为ICD-10编码
国际疾病分类(international Classification of diseases ,ICD),是依据疾病的某些特征,按照规则将疾病分门别类,并用编码的方法来表示的系统。ICD使得疾病名称标准化、格式化。这是医学信息化、医院信息管理等临床信息系统的应用基础。原创 2023-12-19 19:41:29 · 155 阅读 · 0 评论 -
python&rdkit | 从相对原子质量推测元素
【代码】python&rdkit | 从相对原子质量推测元素。原创 2023-10-15 15:19:23 · 95 阅读 · 0 评论 -
化工&python | PID控制器优化算法
比例-积分-导数控制器(PID控制器)是一种采用反馈机制的工业控制系统,用于计算每一时间步k的误差值ek,并将其作为期望设定值(SP)与测量过程变量(PV)之间的差异。通过应用比例、积分和导数项(表示为P、I和D),进行校正调整,从而实现控制作用。传统上存在多种方法来优化这些参数,然而将问题视为黑盒优化问题是一种有效解决方法。ukKPekKIi0∑ikeiKDΔtek−ek−1其中KPKIKD。原创 2023-10-15 15:08:11 · 219 阅读 · 0 评论 -
化工&python | CSTR连续搅拌反应器系统
绝热连续搅拌釜反应器 (CSTR) 是过程工业中常见的化学系统。容器中发生单个一级放热且不可逆的反应 A → B,假定容器始终完全混合。试剂 A 的入口流以恒定的体积速率进入罐。产物流B以相同的体积速率连续排出,液体密度恒定。因此,反应液体的体积是恒定的。,它们的变化可以由下面方程表示。的冷却套作为系统的输入。在反应器中发生的反应是。原创 2023-10-15 14:37:34 · 605 阅读 · 0 评论 -
biopython | 提前PDB文件中的配体
使用Bio.PDB 模块提取PDB文件中的配体并将每个单独保存。原创 2023-04-05 18:31:03 · 437 阅读 · 0 评论 -
AI&化学 | 逆合成分析软件Synbook
Synbook是一款免费的通过AI进行化学合成的软件,他可以进行多条路线设计,拥有反应条件查看等功能,还可以对当前路径进行修改,通过邮箱注册后使用。点击进入网站登录界面目标分子路线查看反应条件redo修改当前路径............原创 2022-05-15 00:25:37 · 3668 阅读 · 1 评论 -
安装gromacs
【代码】安装gromacs。原创 2023-02-01 16:38:07 · 302 阅读 · 0 评论 -
安装Amber22
【代码】安装Amber22。原创 2023-02-01 15:25:39 · 2383 阅读 · 1 评论 -
Amber&prepgen | 准备”氨基酸”式的残基库文件
为了生成类氨基酸残基(这种残基有一个头原子和一个尾原子连接到其他残基),你需要一个主链文件。OMIT_NAME行列出了应该从CRO残基的最终结构中去除的原子, 因为它们不存在于完整的蛋白质中. PRE_HEAD_TYPE和POST_TAIL_TYPE行让prepgen知道周围蛋白质中的哪些原子类型将用于形成共价连接. (需要记住的是prepgen除了用于蛋白和多肽以外还可以用于其他的聚合物. )prepgen将确保”删除”原子的电荷在剩余的原子之间重新分配, 以便总电荷是正确的. (在这个例子中为0)原创 2022-11-25 17:08:29 · 301 阅读 · 0 评论 -
Amber | 推荐力场类型
• a protein force field (recommended choice is ff14SB)• a DNA force field (recommended choice is OL15)• an RNA force field (recommended choice is OL3)• a carbohydrate force field (recommended choice is GLYCAM_06j)• a lipid force field (recommended choi原创 2022-11-16 14:17:31 · 501 阅读 · 0 评论 -
Amber&pdb4amber | 准备PDB文件
PDB文件中唯一需要或有用的数据来设置AMBER模拟是:原子名称,残基名称,也许还有链标识符(如果存在多条链),以及重原子的坐标。除非加载额外的文库,否则非蛋白质结构(特别是低分子量配体)会引起问题;如果它们在PDB文件中的名称对应于AMBER库中的内部名称,则通常会识别水和单原子离子。–dry选项移除结构中的结晶水和–reduce选项在最理想的位置添加氢原子.为tleap程序调整从外部获得的PDB文件。原创 2022-10-26 13:48:49 · 508 阅读 · 0 评论 -
Amber&antechamber | 创建小分子力场参数文件
这是包中最重要的程序。它可以执行许多文件转换,也可以分配原子电荷和原子类型。根据输入的要求,前厅执行以下程序:sqm(或者,mopac或divcon),atomtype,am1bcc,bondtype,espgen,respgen和prepgen。它通常会生成许多中间文件;这些可以通过他们的名字来识别,其中所有字母都是大写字母。如果您在运行前厅时遇到问题,可能需要运行下面描述的各个程序(以使用选项’-s 2’促进此运行)。创建小分子力场参数文件。原创 2022-10-26 10:53:16 · 708 阅读 · 0 评论 -
Amber&parmchk2 | 查找缺失的力场参数
通过计算gaff中两组力场参数的平均绝对误差百分比,生成一对特定力场参数类型的原子类型(‘A/B’)的相似性指数。每个原子类型对(‘A/B’)对于九种不同类型的力场参数具有九个相似性指标,分别是键平衡长度,键拉伸力常数,键平衡角('A’和’B’是中心原子),键角弯曲力常数('A’和’B’是中心原子),键平衡角('A’和’B’是非中心原子),键角弯曲力常数('A’和’B’是非中心原子),扭转角扭转力常数('A’和’B’是内侧原子),扭转角扭转力常数('A’和’B’是外侧原子),二面角不正确。原创 2022-10-25 21:17:32 · 704 阅读 · 0 评论 -
rdkit&molhash | 分子哈希算法
首先,下表总结了可用的分子哈希,它们的计算是否改变了结构,以及它们是否对特定分子特征的存在敏感(或不变)。如果特定的哈希函数对分子特征敏感,但这不是必需的,那么应该对分子进行相应的规范化。扩展的Murcko哈希是分子的规范SMILES,在用附着点替换所有取代基(SMILES中的星号)之后。这是分子在将其所有原子设置为星号并将其键设置为单个键之后的规范SMILES字符串。MolHash是一个从分子结构根据不同hash函数生成不同hashes的算法,适用于不同应用场景下的分子搜索,并能够极大的提升检索速度。原创 2022-09-03 15:02:08 · 254 阅读 · 0 评论 -
InChI&python | 对inchi进行分词
是(国际化合物标识)International Chemical Identifier的缩写(第一个单词的前2字母+第二个单词前2字母+第三单词首字母),InCHI编码是国际纯粹与应用化学联合会International Union of Pure and Applied Chemistry (IUPAC) 给出的每种化合物化学结构的唯一识别码。对inchi进行分词。...原创 2022-08-09 17:13:10 · 275 阅读 · 0 评论 -
cdk&java | 实现化学反应中的片段分组
我们可以使用CXSMILES来组合片段,她的表示方法是原创 2022-07-04 15:58:57 · 302 阅读 · 0 评论 -
cdk&java | 分子sdf文件生成
sdf原创 2022-06-23 18:55:03 · 887 阅读 · 0 评论 -
cdk&java | 处理smiles表达式
cdk原创 2022-06-23 17:04:03 · 395 阅读 · 0 评论 -
python&rdkit | 通过模板生成错误化学反应方法
在现实情况中,科学家只记录了反应成功的化学反应,错误的反应往往被丢弃掉。我们可以通过人为生成的方式来制造在化学上错误的反应,来帮助我们建立如机器学习模型来预测化学的反应性。可以通过以下3个方式来进行,假设我们当前有一堆反应和对应提取的模板(提取模板方法)严格正向匹配对于反应A+B>>C,如果我们使用对其对应的模板可能得到A+B>>C+D,C是数据集中的产物,而A+B>>D就可以作为一个错误的化学反应。这种方法可以生成具有化学选择性的错例反应。随机正向生成对于反应原创 2022-05-26 11:36:39 · 256 阅读 · 0 评论 -
rdkit&networkx | 通过图编辑距离GED计算分子相似性
定义图的编辑距离计算(Graph Edit Distance Computation)是指,对两个图之间通过点和边的insert、delete、substitute操作完成相互转换所需要的最少操作数。GED问题是一个NPC问题,同时也是许多图上应用问题,比如图分类问题、图匹配问题、图相似度搜索问题的核心操作。代码from rdkit import Chemimport networkx as nxdef get_graph(mol): Chem.Kekulize(mol) at原创 2022-05-17 00:39:43 · 1275 阅读 · 0 评论 -
rdkit&python | 批量计算分子之间的相似性
我们经常通过分子指纹来计算分子之间的相似性,但是一个一个分子计算比较慢,我们可以通过批量计算来得到当前分子与数据库中的哪一个分子最相似批量生成分子指纹from rdkit.Chem import AllChemfrom rdkit.Chem.AllChem import GetMorganFingerprintAsBitVectmols = [Chem.MolFromSmiles(s) for s in smiles]fps = [Chem.GetMorganFingerprintAsBitVe原创 2022-05-17 00:10:07 · 1161 阅读 · 0 评论 -
rdkit&smarts | 化学反应模板特殊官能团SMARTS整理
给定一个RDKit分子,该函数返回一个元组列表,其中每个元组包含一组特殊原子的AtomIdx,这些原子应该一起包含在一个片段中。这应该只对反应物进行,否则产物可能最终导致映射不匹配如果另一个原子匹配, 我们将触发整个群被包含的群中的原子与不被包含的群中的“不重要”原子区分开来 group_templates = [ (range(3), '[OH0,SH0]=C[O,Cl,I,Br,F]',), # carboxylic acid / halogen (range原创 2022-04-26 16:18:35 · 1238 阅读 · 0 评论 -
chemoinformatics | 有机化合物官能团缩写与smiles对应表
官能团,是决定有机化合物的化学性质的原子或原子团。常见官能团包括羟基、羧基、醚键、醛基、羰基等。有机化学反应主要发生在官能团上,官能团对有机物的性质起决定作用,—X(X为卤原子,对于卤代烃来说,可以认为卤原子是其官能团,但有部分教材认为碳卤键为其官能团)、-OH、-CHO、-COOH、-NO2、-SO3H、-NH2、RCO-,这些官能团就决定了有机物中的卤代烃、醇或酚、醛、羧酸、硝基化合物或亚硝酸酯、磺酸类有机物、胺类、酰胺类的化学性质。# SubstituentsCC(C)(COP([O-])(=O原创 2022-04-26 14:47:34 · 1314 阅读 · 0 评论 -
chemoinformatics | 有机化学反应常用试剂缩写与smiles对应表
现代有机合成化学的进步极大地受益于现代有机合成试剂的发展和应用。现代有机合成试剂的主要特点是能够实现官能团转变的高选择性——化学选择性、区域选择性和立体选择性;能够促进化学反应的高效性——高纯度、高产率和高效益;能够加快绿色化学的进程——原子经济和环境友好。因此,研究开发和巧妙应用现代有机合成试剂已经成为21世纪化学学科和化学工业发展战略中优先发展的重要课题# Common reagentsO=C(Cl)C(=O)Cl (COCl)2CC(C)(C#N)N=NC(C)(C)C#N AIBN原创 2022-04-26 14:31:24 · 535 阅读 · 0 评论 -
cdk&java | 绘制含有丰富信息的化学反应(适合论文、网页、PPT)
package org.example;import org.openscience.cdk.DefaultChemObjectBuilder;import org.openscience.cdk.depict.DepictionGenerator;import org.openscience.cdk.exception.CDKException;import org.openscience.cdk.interfaces.IReaction;import org.openscience.cdk.原创 2022-04-24 22:48:46 · 711 阅读 · 0 评论 -
rdkit&python | 计算分子内环的数量变化
def cal_changed_ring(input_smi, output_smi): '''Calculate the number of changed rings''' in_mol = Chem.MolFromSmiles(input_smi) out_mol = Chem.MolFromSmiles(output_smi) try: rc_in = in_mol.GetRingInfo().NumRings() rc_out = o原创 2022-03-19 19:54:30 · 968 阅读 · 0 评论 -
opsin&python | 化学命名与smiles转换
OPSINOPSIN is a Java library for IUPAC name-to-structure conversion offering high recall and precision on organic chemical nomenclature.Java 8 (or higher) is required for OPSIN 2.6.0Supported outputs are SMILES, CML (Chemical Markup Language) and InChI原创 2021-12-30 18:00:54 · 1704 阅读 · 3 评论 -
rdkit | 计算分子的价电子数目
价电子是原子在参与化学反应时能够用于成键的电子,是原子核外跟元素化合价有关的电子。from rdkit import Chemmol = Chem.MolFromMolFile('Structure2D_CID_2244.sdf')from rdkit.Chem.Descriptors import NumValenceElectronsprint("the Number ValenceElectrons of Aspirin is", NumValenceElectrons(mol))..原创 2021-12-30 10:40:33 · 655 阅读 · 0 评论 -
rdkit&python | warning警告关闭
from rdkit import RDLoggerRDLogger.DisableLog('rdApp.*')原创 2021-12-08 21:05:37 · 879 阅读 · 0 评论 -
rdkit | 根据重原子数量(非H)来筛选化合物
def filter_compound(smi,lower_limit,upper_limit): mol = Chem.MolFromSmiles(smi) if lower_limit<=mol.GetNumHeavyAtoms()<=upper_limit: return Chem.MolToSmiles(mol) else: return False filter_compound("COC1=CC=CC(=C1)原创 2021-12-01 22:40:50 · 849 阅读 · 0 评论 -
rdkit&python | 计算药效团之间的几何距离
from rdkit import Chemfrom rdkit.Chem import AllChemfrom rdkit import RDConfigfrom rdkit.Chem import ChemicalFeaturesfdefName = os.path.join(RDConfig.RDDataDir, 'BaseFeatures.fdef')factory = ChemicalFeatures.BuildFeatureFactory(fdefName)def euclide原创 2021-11-12 09:25:55 · 990 阅读 · 0 评论 -
rdkit | 可视化mol转svg脚本jupter
from rdkit import Chemfrom rdkit.Chem import Descriptorsfrom rdkit.Chem import Drawfrom rdkit.Chem import AllChemfrom rdkit import DataStructsfrom rdkit.Chem import rdDepictorfrom rdkit.Chem.Dra...原创 2019-11-27 17:05:00 · 693 阅读 · 0 评论 -
python&生物信息学 | DNA反向互补序列获取
complement_table = str.maketrans('ATGCU', 'TACGA')def get_comp(seq): return seq.translate(complement_table)get_comp("CTCCCAGTTTACTATCGCACTGGTCGACTATACCTGTGCC")‘GAGGGTCAAATGATAGCGTGACCAGCTGATATGGACACGG’get_comp("CTCCCAGTTTACTATCGCACTGGTCGACTATA原创 2021-09-16 17:03:19 · 1282 阅读 · 0 评论