InChI(IUPAC International Chemical Identifier)是国际纯粹与应用化学联合会(IUPAC)制定的标准化分子标识。它的目标是:给同一分子唯一且可复现的字符串,便于跨数据库对齐与去重。
InChI 与 InChIKey 的区别
- InChI:分层编码(化学式层、连接层、氢层、电荷层、立体层等),信息完整但较长。
- InChIKey:对 InChI 做哈希得到的 27 位定长字符串,便于数据库索引、批量匹配与去重。
它解决什么问题
- 跨库匹配:不同数据库的同一化合物 SMILES 写法各异,用 InChIKey 可统一对齐。
- 去重:清洗数据时,按 InChIKey 判重比按 SMILES 更可靠。
- 注意:InChIKey 是哈希,理论上存在极小概率碰撞;立体/互变异构的处理也有约定,使用时需了解其层级含义。
关键要点
- InChI = 标准化唯一标识;InChIKey = 其定长哈希,便于检索;
- 跨库对齐与去重首选 InChIKey;
- 了解其分层与立体约定,避免误判。
延伸资源
- 用 RDKit 生成:
Chem.MolToInchiKey(mol)。 - 对比阅读:031《SMILES 入门》、047《去盐与去重复》。