您的位置:首页 > 新闻 > 热点要闻 > 文案馆logo设计_网页布局技巧_资源链接搜索引擎_seo教程网站优化推广排名

文案馆logo设计_网页布局技巧_资源链接搜索引擎_seo教程网站优化推广排名

2025/2/25 4:13:54 来源:https://blog.csdn.net/weixin_42038527/article/details/145566125  浏览:    关键词:文案馆logo设计_网页布局技巧_资源链接搜索引擎_seo教程网站优化推广排名
文案馆logo设计_网页布局技巧_资源链接搜索引擎_seo教程网站优化推广排名

RDKit中的分子指纹是一种用于评估分子相似性的子结构指纹。分子指纹通过将分子的结构信息编码为位串(bit string)来表示,每个位代表分子中是否存在特定的子结构或化学模式。RDKit提供了多种分子指纹生成方法,如Substructure Fingerprint(子结构指纹)、PubChem 分子指纹、MACCS 分子指纹、ExtFP分子指纹等。这些指纹可以用于分子相似性比较、分子分类、分子聚类、分子筛选等许多领域中的化学信息学研究。

一、化学指纹(fingerprint)介绍

1. Substructure Fingerprint(子结构指纹)

子结构指纹是一种基于化学子结构的分子表征方法,广泛用于分子信息学、药物发现和虚拟筛选等领域。子结构指纹通过检测化合物中是否存在特定的化学子结构来生成,通常是一个位串,每个位表示特定子结构的存在(1 表示存在,0 表示不存在)。这种指纹可用于计算化合物之间的相似性,常见的相似性度量包括Tanimoto 相似性。 

2. PubChem 分子指纹

PubChemFP 是一种用于表示分子结构的分子指纹,由 PubChem 数据库开发并用于分子相似性搜索和化学信息学分析。PubChem 分子指纹是一个由 881 个位(bit)组成的二进制字符串,每个位表示特定子结构的存在与否,1 表示该子结构存在,0 表示不存在。PubChem 指纹的具体用途包括化合物相似性搜索、药物发现和虚拟筛选、QSAR 模型等。

3. MACCS 分子指纹

MACCSFP 是一种用于表示分子结构的分子指纹,通常用于化学信息学中的分子相似性搜索、分类、聚类和机器学习模型的特征表示。MACCS 分子指纹的常见版本是 166 位的二进制串,每一位代表一个特定的子结构,如果某个分子中包含了某个子结构,该位就被设置为 1,否则为 0。MACCS 指纹的具体用途包括分子相似性搜索、虚拟筛选和药物发现、机器学习中的特征向量等。

4. ECFP分子指纹

扩展连通性指纹(Extended Connectivity Fingerprints,ECFP),属于扩展分子指纹类别,通常用于化学信息学领域的分子相似性计算和虚拟筛选中。与常见的分子指纹(如 PubChemFP、MACCSFP 等)相比,ECFP能更详细地捕捉分子的特征,通过扩展连接的原子和基团来描述分子的结构,通常会捕捉分子中的环状和线性部分的关系。ECFP常用于分子相似性搜索、化合物库的虚拟筛选、药物发现中的分子配体筛选等任务中。在 RDKit 中,ECFP 指纹又叫 Morgan 指纹,其原因为ECFP的核心思想来自于 Morgan 算法,该算法试图为分子中的每个原子分配一个唯一的、连续的编号。

二、代码实现

from rdkit import Chem
from rdkit.Chem import RDKFingerprint, rdMolDescriptors, MACCSkeys, AllChem
from rdkit import rdBase
import warningsfrom rdkit.Chem.rdMolDescriptors import GetMorganFingerprintAsBitVectrdBase.DisableLog('rdApp.warning')
warnings.filterwarnings('ignore')smiles = 'O=C1N(C/C=C/c2cn[nH]c2)[C@H](Cc2ccccc2)[C@H](O)[C@@H](O)[C@@H](Cc2ccccc2)N1C/C=C/c1cn[nH]c1'
mol = Chem.MolFromSmiles(smiles)  # 将Smiles字符串转换成分子对象# Substructure Fingerprint
sub_fp = list(RDKFingerprint(mol, fpSize=1024))  # 生成子结构指纹# PubChem Fingerprint
pubchem_fp = list(rdMolDescriptors.GetMorganFingerprintAsBitVect(mol, 2, nBits=881))# MACCS Fingerprint
maccs_fp = list(MACCSkeys.GenMACCSKeys(mol))# Extended Fingerprint
morgan_fp = list(GetMorganFingerprintAsBitVect(mol, 2, 1024))

三、参考博客

四种分子指纹的介绍:Substructure Fingerprint(子结构指纹)、PubChem 分子指纹、MACCS 分子指纹、ExtFP分子指纹-CSDN博客

The RDKit Documentation — The RDKit 2024.09.5 documentation 

Rdkit|化学指纹(fingerprint)_化学指纹类型-CSDN博客 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com