rdkit-js icon indicating copy to clipboard operation
rdkit-js copied to clipboard

Need Tanimoto Similarity Search in the rdkit/rdkit-js like RDKIT

Open caok2709 opened this issue 2 years ago • 5 comments

Is your feature request related to a problem? Please describe. No.

Describe the solution you'd like Right now, it looks like rdkit-js only have the ability to do the Substructure Search.

However, we need to have Tanimoto Similarity search. For example: You send a smiles string/or rdkit.get_mol(smiles string) + the similarity level (like 80% or any similarity level you want), then the code will search through an array of smiles just like what Substructure Search did. Then the function will tell if it can reach the similarity level of not.

Describe alternatives you've considered I reviewed the source code of RDKIT. It looks the function is already there: DataStructs.TanimotoSimilarity. Will you be able to migrate the function and put it in the rdkit-js?

Additional context None.

caok2709 avatar Jan 09 '23 15:01 caok2709

@MichelML Happy new year. Please let me know if this function can be release in the rdkit-js any soon.

caok2709 avatar Jan 09 '23 15:01 caok2709

Thanks @caok2709 , @ptosco isn't this possible already with the SubstructLibrary? Happy to add an example if it is indeed possible.

MichelML avatar Jan 09 '23 15:01 MichelML

@MichelML It isn't. SubstructLibrary only retrieves molecule that contain the specified substructure, using pattern fingerprints as a pre-filter to improve performance. Currently rdkit-js has no functionality for similarity searches.

ptosco avatar Jan 09 '23 16:01 ptosco

@ptosco @MichelML Will it be possible to add Tanimoto Similarity search functionality in the next version?

caok2709 avatar Jan 10 '23 17:01 caok2709

@ptosco how complex would it be to include similarity search in the minimallib? It seems like a common use case and something we would use at our company as well.

MichelML avatar Sep 23 '23 15:09 MichelML