Chuyển đổi giữa Open babel, Pybel và RDkit để có thể xử lý các tệp mol

RDkit, Open Babel và Pybel là những thư viện cần thiết để thực hiện hóa tin học trong Python.Tất cả các thư viện đều có thể thực hiện những việc như thao tác phân tử và tạo bộ mô tả cho máy học, nhưng có một số thao tác chỉ có thể được thực hiện trong gói đó hoặc dễ triển khai hơn.

Về cơ bản, các hoạt động khác nhau được thực hiện bắt đầu từ việc chuyển đổi một hợp chất thành một đối tượng mol.Tất nhiên, các đối tượng mol được tạo trong mỗi thư viện không thể đọc được trong thư viện khác, vì vậy chúng cần được chuyển đổi.

Chuyển đổi Babel mở sang Pybel

Có một mô-đun chuyển đổi chuyên dụng từ Openbabel mol sang Pybel mol.

# Tạo định dạng Openbabel mol từ Smiles nhập openbabel obConversion.SetInFormat("smi") obmol = openbabel.OBMol() obConversion.ReadString(obmol, "C1=CC=CS1") obmol

>

# Chuyển đổi Openbabel mol thành pybel mol với Molucule() import pybel pybelmol = pybel.Molecule(obmol) pybelmol

Chuyển đổi Open Babel, Pybel sang RDkit

Sau khi xuất Open Babel hoặc Pybel mol dưới dạng tệp SDF, hãy đọc nó bằng RDkit.Con đường ngược lại cũng thông qua SDF.

từ rdkit nhập Chem pybelmol.write("sdf", "outputfile.sdf") rdmol = Chem.SDMolSupplier('outputfile.sdf') rdmol