This is the documentation of the BOnd aNd Atom FeaturIzer and Descriptor Extractor (BONAFIDE)!
Latest version: 0.1.1
BONAFIDE is a Python-based package for calculating features for atoms and bonds in molecules by providing a consistent API to popular featurization libraries and packages. It can calculate descriptors based on both 2D and 3D molecular representations depending on the provided user input. It aims to simplify the process of calculating local features for machine learning and cheminformatics applications.
The source code of BONAFIDE is publicly available on GitHub.
Preview¶
Get all 2D RDKit features for all atoms in a molecule starting from a SMILES string.
>>> from bonafide import AtomBondFeaturizer
>>> f = AtomBondFeaturizer()
>>> # Get the list of the desired feature indices
>>> fdf = f.list_atom_features(origin="RDKit", dimensionality="2D")
>>> fidx_list = fdf.index.to_list()
>>> print(len(fidx_list))
45
>>> # Read in the molecule and calculate the features
>>> f.read_input("O=C(O)Cc1ccccc1Nc1c(Cl)cccc1Cl", "diclofenac")
>>> f.featurize_atoms(atom_indices="all", feature_indices=fidx_list)
>>> # Get the results
>>> f.return_atom_features()
>>> ...
Dependencies¶
BONAFIDE provides a unified interface to the following packages. Further details on the dependencies can be found here.
ALFABET
DBSTEP
DScribe
kallisto
mendeleev
MORFEUS
Multiwfn
Psi4
qmdesc
RDKit
xtb
License¶
BONAFIDE is released under the Apache License, Version 2.0.