简介
如果mol文件或smiles包含多个化合物(片段),则会干扰后续的描述符计算等。
环境
- Python3.6
- RDKit 2019.09.1.0
去除盐
导入库
from rdkit import Chem
from rdkit.Chem.SaltRemover import SaltRemover
载入数据
smis = ("CN(C)C.Cl", "CN(Br)Cl.Cl", "CC(=O)O.[Na]", "CN(C)C.Cl.Br")
去除盐
remover = SaltRemover(defnData="[Cl,Br]")
for smi in smis:
mol = Chem.MolFromSmiles(smi)
mol2 = remover.StripMol(mol)
smi2 = Chem.MolToSmiles(mol2)
print(smi + "->" + smi2)