数据文档
核心概念理解:
- Reaction SMILES (反应SMILES串): 一种用文本表示化学反应的方式,通常格式为
Reactants>>Products。反应物和产物内部的分子用.分隔。 - Atom Mapping (原子映射): 在反应SMILES中,用
:数字标记原子,表示反应物中的某个原子在反应后变成了产物中的哪个原子。例如[CH3:1][NH2:2]>>[CH3:1][NH3+:2]表示甲基的碳原子1还是碳原子1,氮原子2还是氮原子2。准确的原子映射对于理解反应机理和训练模型至关重要。 - Indigo Toolkit / NameRxn / IndigoAutoMapperKNIME: 这些都是化学信息学中用于处理化学结构、反应、进行原子映射的工具或算法的名称。
文件内容推测:
dataSetA.csv
- 第一行数据:
1 US07678803B2 [H-].[CH3:1]...>>...[Br:19] set([1, 3]) - 推测列含义 (从左到右):
ID(例如: 1): 可能是数据集中的一个唯一索引或行号。PatentID(例如: US07678803B2): 反应来源的美国专利号。ReactionSMILES_AtomMapped(例如:[H-].[CH3:1]...>>...[Br:19]): 这是一个带有原子映射的反应SMILES串。[CH3:1]表示这个甲基碳原子被标记为1号原子。>>左边是反应物,右边是产物。中间可能还有试剂(在>和>>之间,但这里没有显示)。ReactionClass(例如:set([1, 3])): 表示该反应的分类。set()里的数字可能是反应类型的编码,具体含义需要参照rxnClasses.pickle文件。一个反应可能属于多个类别。
- 用途: 这可能是数据集的主要部分之一,包含了核心的反应信息和分类。
dataSetB.csv
- 表头:
rxn_Class patentID rxnSmiles_Mapping_NameRxn reactantSet_NameRxn NameRxn_Mapping_Complete rxnSmiles_Mapping_IndigoTK reactantSet_IndigoTK IndigoTK_Mapping_Complete rxnSmiles_IndigoAutoMapperKNIME reactantSet_IndigoAutoMapperKNIME IndigoAutoMapperKNIME_Mapping_Complete - 第一行数据 (对应表头):
6 US05849732 C.CCCCCC...>>...[OH:27] set([3, 4]) TRUE C(OC(...)...>[ClH:40] set([0, 2]) TRUE C.CCCCCC...>>...[ClH:47] set([3, 4]) TRUE - 推测列含义 (从左到右):
rxn_Class: 反应分类编码 (例如: 6),同样可能对应rxnClasses.pickle。patentID: 专利号 (例如: US05849732)。rxnSmiles_Mapping_NameRxn: 由 "NameRxn" 工具生成的带有原子映射的反应SMILES。reactantSet_NameRxn: 可能是 "NameRxn" 工具识别出的反应物集合的一些属性或分类 (例如:set([3, 4]))。注意,这里不是反应物的SMILES,而更像是对反应物组合的某种数字标签集合。NameRxn_Mapping_Complete: 布尔值 (TRUE/FALSE),指示 "NameRxn" 的原子映射是否完整或成功。rxnSmiles_Mapping_IndigoTK: 由 "Indigo Toolkit" 生成的带有原子映射的反应SMILES。reactantSet_IndigoTK: 类似reactantSet_NameRxn,但来自 "Indigo Toolkit" (例如:set([0, 2]))。IndigoTK_Mapping_Complete: 布尔值,指示 "Indigo Toolkit" 的原子映射是否完整或成功。rxnSmiles_IndigoAutoMapperKNIME: 由 "IndigoAutoMapperKNIME" (KNIME工作流中的Indigo自动映射工具) 生成的带有原子映射的反应SMILES。reactantSet_IndigoAutoMapperKNIME: 类似地,来自 "IndigoAutoMapperKNIME" (例如:set([3, 4]))。IndigoAutoMapperKNIME_Mapping_Complete: 布尔值,指示 "IndigoAutoMapperKNIME" 的原子映射是否完整或成功。- 用途: 这个文件似乎是用来比较不同原子映射工具(NameRxn, IndigoTK, IndigoAutoMapperKNIME)在同一批反应上的表现。它提供了每个工具生成的映射结果和映射完整性的标志。这对于评估原子映射算法的质量非常有用。
incompleteIndigoMappings_dataSetB.csv
- 表头 (推测): 文件名本身以及第一行数据
0 31 C=[C:2]...暗示了其结构。 - 第一行数据:
0 31 C=[C:2]1[C:3](=[CH2:4])[CH:5]2[O:6][CH:7]1[C:8](=[CH2:9])[C:10]2=[CH2:11].C=[CH:13][C:14]([CH3:15])=[O:16]>ClC(Cl)Cl.Oc1ccc(O)cc1.[Cl-].[Cl-].[Zn+2]>C1[CH2:2][C:3]2=[C:4](C[CH:13]1[C:14]([CH3:15])=[O:16])[CH:7]1[O:6][CH:5]2[C:10](=[CH2:11])[C:8]1=[CH2:9] - 推测列含义 (从左到右):
Original_Index_in_dataSetB(例如: 0): 这可能是dataSetB.csv中原始行的索引(或者是这个不完整列表的内部索引,但第一种可能性更大)。idx_from_dataSetB(例如: 31): 这个31非常重要,它很可能对应dataSetB.csv中的某一行(可能是其自身的ID列,或者就是行号,如果dataSetB.csv有一个从0或1开始的ID列的话)。smiles(例如:C=[C:2]...): 这是一个反应SMILES。文件名 "incompleteIndigoMappings" 表明这是 Indigo 工具未能成功或完整地进行原子映射的反应。
- 用途: 这个文件列出了
dataSetB中那些 Indigo 工具未能很好处理的反应。
incompleteIndigoMappings_dataSetB_results.csv
- 第一行数据:
31 C=[C:2]1[CH:7]...=[O:16])[O:6]3 - 推测列含义 (从左到右):
idx_from_dataSetB(例如: 31): 这个31应该与incompleteIndigoMappings_dataSetB.csv中的idx_from_dataSetB(即第二列) 以及dataSetB.csv中的某条记录对应。Corrected_or_Alternative_SMILES(例如:C=[C:2]1[CH:7]...): 这是针对incompleteIndigoMappings_dataSetB.csv中对应索引的反应的“结果”。这个结果可能是手动校正后的原子映射,或者是通过其他方法得到的更好的映射,或者是某个流程处理后的输出。
- 用途: 这个文件提供了对
incompleteIndigoMappings_dataSetB.csv中列出的“问题反应”的处理结果或修正后的版本。
rxnClasses.pickle
- 文件类型:
.pickle文件是 Python 用来序列化和反序列化 Python 对象结构的文件。 - 推测内容: 根据文件名
rxnClasses以及在dataSetA.csv和dataSetB.csv中看到的set([1, 3])或6这样的反应类别编码,这个 pickle 文件几乎肯定包含了一个 Python 字典 (dict) 或类似的数据结构。这个结构会将数字编码映射到人类可读的反应类别名称。 - 例如,它可能包含类似这样的内容:
{1: "Heteroatom alkylation and arylation", 2: "Acylation and related processes", 3: "C-C bond formation", ...}或者是一个类别列表,其中索引对应编码。 - 用途: 用于查找
dataSetA.csv和dataSetB.csv中反应类别编码的具体含义。你需要用 Python 的pickle模块来加载和查看它的内容。
import pickle
with open('rxnClasses.pickle', 'rb') as f:
reaction_classes_map = pickle.load(f)
print(reaction_classes_map)
文件间关系总结:
dataSetA.csv和dataSetB.csv是主要的反应数据来源。dataSetA可能是一个经过筛选或特定用途的子集,而dataSetB则包含了用不同工具进行原子映射的比较数据。rxnClasses.pickle是一个辅助文件,用于解释dataSetA.csv和dataSetB.csv中的反应类别编码。incompleteIndigoMappings_dataSetB.csv指出了dataSetB.csv中 Indigo 工具原子映射不佳的反应子集(通过idx列关联)。incompleteIndigoMappings_dataSetB_results.csv提供了对incompleteIndigoMappings_dataSetB.csv中列出的这些问题反应的处理结果或修正(通过idx列关联)。