[ PROMPT_NODE_26442 ]
core_api
[ SKILL_DOCUMENTATION ]
# Datamol 核心 API 参考
本文档涵盖了 datamol 命名空间中可用的主要函数。
## 分子创建与转换
### `to_mol(mol, ...)`
将 SMILES 字符串或其他分子表示转换为 RDKit 分子对象。
- **参数**: 接受 SMILES 字符串、InChI 或其他分子格式
- **返回**: `rdkit.Chem.Mol` 对象
- **常用用法**: `mol = dm.to_mol("CCO")`
### `from_inchi(inchi)`
将 InChI 字符串转换为分子对象。
### `from_smarts(smarts)`
将 SMARTS 模式转换为分子对象。
### `from_selfies(selfies)`
将 SELFIES 字符串转换为分子对象。
### `copy_mol(mol)`
创建分子对象的副本,以避免修改原始对象。
## 分子导出
### `to_smiles(mol, ...)`
将分子对象转换为 SMILES 字符串。
- **常用参数**: `canonical=True`, `isomeric=True`
### `to_inchi(mol, ...)`
将分子转换为 InChI 字符串表示。
### `to_inchikey(mol)`
将分子转换为 InChI Key(固定长度哈希)。
### `to_smarts(mol)`
将分子转换为 SMARTS 模式。
### `to_selfies(mol)`
将分子转换为 SELFIES (Self-Referencing Embedded Strings) 格式。
## 清洗与标准化
### `sanitize_mol(mol, ...)`
RDKit 清洗操作的增强版,使用 mol→SMILES→mol 转换和芳香氮修复。
- **目的**: 修复常见的分子结构问题
- **返回**: 清洗后的分子,若清洗失败则返回 None
### `standardize_mol(mol, disconnect_metals=False, normalize=True, reionize=True, ...)`
应用全面的标准化程序,包括:
- 金属断开
- 标准化(电荷校正)
- 再电离
- 片段处理(选择最大片段)
### `standardize_smiles(smiles, ...)`
直接对 SMILES 字符串应用 SMILES 标准化程序。
### `fix_mol(mol)`
尝试自动修复分子结构问题。
### `fix_valence(mol)`
纠正分子结构中的化合价错误。
## 分子属性
### `reorder_atoms(mol, ...)`
确保同一分子无论原始 SMILES 表示如何,原子排序均保持一致。
- **目的**: 保持特征生成的可重复性
### `remove_hs(mol, ...)`
从分子结构中移除氢原子。
### `add_hs(mol, ...)`
向分子结构中添加显式氢原子。
## 指纹与相似度
### `to_fp(mol, fp_type='ecfp', ...)`
生成用于相似度计算的分子指纹。
- **指纹类型**: