在论文:“ Graph Networks as a Universal Machine Learning Framework for Molecules and Crystals ”中,作者介绍了手性作为原子特征输入来分析 QM9 数据集。我试图重新创建这个原子功能如下
手性:(分类)R、S 或不是手性中心(单热编码)。
我使用的代码是:
from chainer_chemistry import datasets
from chainer_chemistry.dataset.preprocessors.ggnn_preprocessor import GGNNPreprocessor
from rdkit import Chem
import numpy as np
dataset, dataset_smiles = datasets.get_qm9(GGNNPreprocessor(), return_smiles=True)
for i in range(len(dataset_smiles)):
mol = Chem.MolFromSmiles(dataset_smiles[i])
Chem.AssignAtomChiralTagsFromStructure(mol)
chiral_cc = Chem.FindMolChiralCenters(mol)
if not len(chiral_cc) == 0:
print(chiral_cc)
输出显示此数据集没有手性中心。当我使用 时includeUnassigned=True
,代码给出了一个元组列表,但不是“R/S”,而是“?”。我想知道我的实现是否有错误。如果这是意料之中的,对上述论文中如何分配手性有任何想法吗?