mojaie / MolecularGraph.jl

Graph-based molecule modeling toolkit for cheminformatics
MIT License
189 stars 27 forks source link

Morgan Fingerprint #72

Open CaiYitao opened 2 years ago

CaiYitao commented 2 years ago

Is there a function which is similar to the following rdkit morgan fingerprint

fp_vec = AllChem.GetMorganFingerprintAsBitVect(mol, radius=3, nBits=fp_length)

and convert it to array

DataStructs.ConvertToNumpyArray(fp_vec, arr)

Thank you!

mojaie commented 2 years ago

Thank you for your comment. Unfortunately, Morgan fingerprint is not implemented yet.

Nick-Mul commented 2 years ago

I am quite new to Julia and but like this project. I was looking for something similar but a encode the molecular graph as a vector. I was going to try to covert this python example in Julia but it occurs to me most of this is already implemented here?! https://www.blopig.com/blog/2022/02/how-to-turn-a-smiles-string-into-a-molecular-graph-for-pytorch-geometric/

mojaie commented 2 years ago

Thank you for your interest. Maybe MolecularGraph.jl functionality corresponds to step 1, 2 and middle of step 3 of the tutorial article you mentioned.

Please refer the following tutorial https://github.com/mojaie/MolecularGraph.jl_notebook

Building molecular objects like RDKit Chem.MolFromSmiles is demonstrated below

Getting started https://nbviewer.org/github/mojaie/MolecularGraph.jl_notebook/blob/master/notebook/gettingStarted.ipynb

get_atom_features and get_atom_features may correspond to below, but the definition of molecular features may be a little different (maybe have improved) from RDKit

Calculate descriptors https://nbviewer.org/github/mojaie/MolecularGraph.jl_notebook/blob/master/notebook/calculateDescriptors.ipynb

feature vectorization (latter half of step 3 of the tutorial) for linear algebra-based machine learning is not available (this is not my scope, maybe will not be implemented here, but I believe MolecularGraph.jl has good interfaces to build and customize feature vectors).

I'm sorry that the development of MolecularGraph.jl is not so active now due to my busy schedule, so tutorials are maybe not up to date.

Nick-Mul commented 2 years ago

Thank you for the pointers. You've done a great job on this project so far!