标签: cheminformatics

将分子名称转换为 SMILES?

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

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

谢谢!

python cheminformatics

7
推荐指数
1
解决办法
5616
查看次数

如何从 SMILES 分子表示生成图形?

我有一个用 SMILES 字符串表示的分子数据集。我试图将其表示为图表。有没有办法这样做?例如,假设我有 string CC(C)(C)c1ccc2occ(CC(=O)Nc3ccccc3F)c2c1,是否有将其转换为图形表示的通用方法,即邻接矩阵和原子向量?我从图表中看到解决SMILES 的问题,我知道rdkitMolFromSmiles,但我找不到可以从 SMILES 字符串中获取图表的内容。

python cheminformatics rdkit

7
推荐指数
2
解决办法
4695
查看次数

RDKit:如何检查分子是否完全匹配?

我正在使用 RDKit 并尝试检查分子是否完全匹配。使用Chem.MolFromSmiles()表达式后m == p显然不会导致预期的结果。当然,我可以检查是否p是 的子结构m以及是否m是 的子结构p。但对我来说,这看起来太复杂了。我在 RDKit 文档中找不到或忽略了完全匹配的代码示例。我该如何正确地做到这一点?谢谢你的提示。

代码:

from rdkit import Chem

myPattern = 'c1ccc2c(c1)c3ccccc3[nH]2'          # Carbazole
myMolecule = 'C1=CC=C2C(=C1)C3=CC=CC=C3N2'      # Carbazole

m = Chem.MolFromSmiles(myMolecule)
p = Chem.MolFromSmiles(myPattern)

print(m == p)                    # returns False, first (unsuccessful) attempt to check for identity

print(m.HasSubstructMatch(p))    # returns True
print(p.HasSubstructMatch(m))    # returns True
print(m.HasSubstructMatch(p) and p.HasSubstructMatch(m))    # returns True, so are the molecules identical?
Run Code Online (Sandbox Code Playgroud)

cheminformatics rdkit

7
推荐指数
2
解决办法
2028
查看次数

使用 rdkit 或其他 python 模块将 SMILES 转换为化学名称或 IUPAC 名称

有没有办法使用 RDKit 或其他 python 模块将 SMILES 转换为化学名称或 IUPAC 名称?

我在其他帖子中找不到非常有用的东西。

非常感谢!

python cheminformatics rdkit

7
推荐指数
1
解决办法
9090
查看次数

从PubChem FTP数据生成分子的2D图像

而不是抓住PubChem的网站,我宁愿做得好,并从PubChem ftp网站本地生成图像:

ftp://ftp.ncbi.nih.gov/pubchem/specifications/

唯一的问题是我仅限于OSX和Linux,我似乎无法找到一种以编程方式生成他们在网站上拥有的2D图像的方法.看这个例子:

https://pubchem.ncbi.nlm.nih.gov/compound/6#section=Top

在"2D结构"标题下,我们在这里有这样的图像:

https://pubchem.ncbi.nlm.nih.gov/image/imgsrv.fcgi?cid=6&t=l

这就是我想要产生的东西.

python scientific-computing scipy pubchem cheminformatics

6
推荐指数
2
解决办法
255
查看次数

图中的微笑

是否存在将图(或邻接矩阵)转换为SMILES字符串的方法或程序包?

例如,我知道原子是[6 6 7 6 6 6 6 8] ([C C N C C C C O]),邻接矩阵是

[[ 0.,  1.,  0.,  0.,  0.,  0.,  0.,  0.],

 [ 1.,  0.,  2.,  0.,  0.,  0.,  0.,  1.],

 [ 0.,  2.,  0.,  1.,  0.,  0.,  0.,  0.],

 [ 0.,  0.,  1.,  0.,  1.,  0.,  0.,  0.],

 [ 0.,  0.,  0.,  1.,  0.,  1.,  0.,  0.],

 [ 0.,  0.,  0.,  0.,  1.,  0.,  1.,  1.],

 [ 0.,  0.,  0.,  0.,  0.,  1., …
Run Code Online (Sandbox Code Playgroud)

python bioinformatics cheminformatics rdkit molecule

6
推荐指数
1
解决办法
1021
查看次数

从微笑文件中检索所有分子

我正在研究.smiles文件..smiles文件的文件结构是:http://en.wikipedia.org/wiki/Chemical_file_format#SMILES

我想从微笑文件中获取所有原子.这意味着如果存在单个"C"原子,则意味着将有4个"H"原子连接到它们.

我在搜索时发现python中有一些模块可以解析微笑格式,但它们不会给出支持的氢原子.(例如:它们只给'C'而不是其他4'H'原子连接到'C'原子)

如何使用python找到所有原子,包括连接的'H'原子.
需要转换为包含连接的'H'原子的所有原子的smiles文件示例:

[H]OC([H])([H])[C@@]1([H])C([H])=C([H])[C@@]([H])(n2c([H])nc3c(nc(nc23)N([H])[H])N([H])C2([H])C([H])([H])C2([H])[H])C1([H])[H]
Run Code Online (Sandbox Code Playgroud)

先感谢您.

python bioinformatics biopython cheminformatics

3
推荐指数
1
解决办法
2107
查看次数

如何将 RDKit 一致性对象保存到 sdf 文件中?

我为一个分子生成了一堆构象异构体。对于每个一致的,我想将坐标保存在 SDF 文件中。我尝试了以下操作,但 sdf 文件中的坐标与符合者的坐标不同。

from rdkit import Chem
from rdkit.Chem import AllChem
from rdkit.Chem.EnumerateStereoisomers import EnumerateStereoisomers
from rdkit.Chem.EnumerateStereoisomers import StereoEnumerationOptions


aspirin = 'CC(=O)OC1=CC=CC=C1C(=O)O'
mol = Chem.AddHs(Chem.MolFromSmiles(aspirin))

conformers = AllChem.EmbedMultipleConfs(mol, numConfs=8)

conformer_i = mol.GetConformer(0)  # This is the conformer that I wanted to save in a SDF file.
print(conformer_i.GetPositions())
Run Code Online (Sandbox Code Playgroud)

我明白了

[[ 3.55910965  0.20840444  0.20174025]
 [ 2.13148034 -0.07274183 -0.11680036]
 [ 1.81233825 -0.09134332 -1.32465968]
 [ 1.16950868 -0.30747936  0.83214171]
 [-0.12944319 -0.55824117  0.41262056]
 [-0.53676538 -1.86517356  0.15656512]
 [-1.82111824 -2.14574436 -0.26154327]
 [-2.69581394 -1.09437287 -0.4203516 ]
 [-2.35275981 …
Run Code Online (Sandbox Code Playgroud)

python machine-learning chemistry cheminformatics rdkit

3
推荐指数
1
解决办法
6368
查看次数

元素周期表的数据结构

我的目标是使用元素周期表(或列表)来获取有关Java中特定元素的信息.我想通过原子序数和符号进行搜索(但转换应该很简单).

我在这个JQuery插件中找到了这些信息.但它存储为JSON文件.

看起来硬编码信息是最有效的(因为它不会经常更改并且由于性能原因),但是如何将JSON转换为硬编码enum

java enums cheminformatics

1
推荐指数
1
解决办法
6002
查看次数