gpt4 book ai didi

python - 使用 RDKit 计算 sdf 文件和结构 SMILE 之间的 Tanimoto 相似度?

转载 作者:行者123 更新时间:2023-12-01 00:34:00 26 4
gpt4 key购买 nike

我正在使用 RDKIt 和 Python 3.7 来计算 sdf(每个结构的微笑)中的数据库与分子的相似度,其中我有微笑。我找到了一种使用以下代码仅计算两个 SMILES 之间的 Tanimoto 指数的方法:

import numpy as np 
import scipy
import matplotlib
import matplotlib.pyplot as plt
import rdkit as rd
from rdkit import Chem

ref = Chem.MolFromSmiles('Nc1nc2nc(N)nc(N)c2nc1-c1cccc(Cl)c1')
mol1 = Chem.MolFromSmiles('structure smiles')
fp1 = Chem.RDKFingerprint(ref)
fp2 = Chem.RDKFingerprint(mol1)

Tan =DataStructs.TanimotoSimilarity(fp1,fp2)

print (Tan)

有没有办法用 sdf 文件替换 mol1?

最佳答案

您可以使用 SDMolSupplier 迭代 SDF。

from rdkit import Chem, DataStructs

ref = Chem.MolFromSmiles('Nc1nc2nc(N)nc(N)c2nc1-c1cccc(Cl)c1')
fp1 = Chem.RDKFingerprint(ref)

suppl = Chem.SDMolSupplier('yourSDF.sdf')
for mol in suppl:
fp2 = Chem.RDKFingerprint(mol)
Tan = DataStructs.TanimotoSimilarity(fp1,fp2)
print(Tan)

关于python - 使用 RDKit 计算 sdf 文件和结构 SMILE 之间的 Tanimoto 相似度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57945564/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com