【问题标题】:Rdkit Mol object getProp("_Name") is empty. How to get ID?Rdkit Mol 对象 getProp("_Name") 为空。如何获得身份证?
【发布时间】:2021-06-07 20:25:31
【问题描述】:

所以我一直在查看文档,但找不到任何相关内容。在 SDF 文件中,Chembl 名称为空,但我确实在我想要的 chembl ID 上有条目。这里'

 15 12  2  0
 16 13  1  0
 17 10  1  0
 18 16  2  0
 19 16  1  0
 20 19  2  0
 21 18  1  0
 22 20  1  0
  4  5  2  0
 10  9  2  0
 21 22  2  0
M  END
>  <chembl_id>  (4) 
CHEMBL6226

>  <chembl_pref_name>  (4) 
None

$$$$

但是

for idx, mol in enumerate(self.hits):
    print(mol.GetProp("_Name"))

给我空白。在这种情况下,我需要 chembl ID。

【问题讨论】:

    标签: python rdkit molecule


    【解决方案1】:

    SDF 中的属性被添加到分子中。您可以通过几种不同的方式访问它们:

    # return the properties as a dictionary
    prop_dict = mol.GetPropsAsDict()
    chembl_id = prop_dict.get('chembl_id')
    
    # Check a property exists
    has_id = mol.HasProp('chembl_id')
    
    # Get a single property
    chembl_id = mol.GetProp('chembl_id')
    
    # To get a numerical prop (assuming it exists in the file)
    mol_wt = mol.GetDoubleProp('MolWt')
    

    _Name 属性是从 SD 文件的标题行添加的,即在此示例中,_Name 属性将为“6602966”(PubChem id):

    $$$$
    6602966
         RDKit          2D
    
     27 29  0  0  0  0  0  0  0  0999 V2000
        8.1706    6.9514    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-23
      • 1970-01-01
      • 1970-01-01
      • 2020-05-22
      • 1970-01-01
      • 2018-09-07
      • 1970-01-01
      相关资源
      最近更新 更多