gpt4 book ai didi

python - 将分子名称转换为 SMILES?

转载 作者:太空宇宙 更新时间:2023-11-04 00:03:43 34 4
gpt4 key购买 nike

我只是想知道,有什么方法可以将 IUPAC 或常见的分子名称转换为 SMILES?我想这样做而不必使用在线系统手动转换每一个。任何输入将不胜感激!

作为背景,我目前正在使用 python 和 RDkit,所以我不确定 RDkit 是否可以做到这一点,我只是不知道。我当前的数据是 csv 格式。

谢谢!

最佳答案

RDKit 无法将名称转换为 SMILES。 Chemical Identifier Resolver可以转换名称和其他标识符(如 CAS 号)并具有一个 API,因此您可以使用脚本进行转换。

from urllib.request import urlopen
from urllib.parse import quote

def CIRconvert(ids):
try:
url = 'http://cactus.nci.nih.gov/chemical/structure/' + quote(ids) + '/smiles'
ans = urlopen(url).read().decode('utf8')
return ans
except:
return 'Did not work'

identifiers = ['3-Methylheptane', 'Aspirin', 'Diethylsulfate', 'Diethyl sulfate', '50-78-2', 'Adamant']

for ids in identifiers :
print(ids, CIRconvert(ids))

输出

3-Methylheptane CCCCC(C)CC
Aspirin CC(=O)Oc1ccccc1C(O)=O
Diethylsulfate CCO[S](=O)(=O)OCC
Diethyl sulfate CCO[S](=O)(=O)OCC
50-78-2 CC(=O)Oc1ccccc1C(O)=O
Adamant Did not work

关于python - 将分子名称转换为 SMILES?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54930121/

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