Converteren tussen Open babel, Pybel en RDkit om mol-bestanden af ​​te handelen

RDkit, Open Babel en Pybel zijn onmisbare bibliotheken voor het doen van chemo-informatica in Python.Alle bibliotheken kunnen moleculaire bewerkingen uitvoeren en descriptoren genereren voor machine learning, maar er zijn enkele bewerkingen die alleen met dat pakket kunnen worden uitgevoerd of die gemakkelijker kunnen worden geïmplementeerd.

In principe worden verschillende bewerkingen uitgevoerd, beginnend bij het omzetten van een verbinding in een mol-object.Het mol-object dat in elke bibliotheek is gemaakt, kan natuurlijk niet worden gelezen door een andere bibliotheek, dus het moet worden geconverteerd.

Omzetten van Open Babel naar Pybel

Er is een speciale conversiemodule van Mol of Openbabel naar mol Pybel.

#Creëer openbabel formaat mol uit Smiles import openbabel obConversion.SetInFormat ("smi") obmol = openbabel.OBMol () obConversion.ReadString (obmol, "C1 = CC = CS1") obmol

>

Converteer Openbabel mol naar pybel mol met #Molucule () import pybel pybelmol = pybel.Molecule (obmol) pybelmol

Conversie van Open Babel, Pybel naar RDkit

Voer mol van Open Babel of Pybel uit als een SDF-bestand en lees het vervolgens met RDkit.De omgekeerde route is ook via SDF.

van rdkit import Chem pybelmol.write ("sdf", "outputfile.sdf") rdmol = Chem.SDMolSupplier ('outputfile.sdf') rdmol