Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/keiserlab/e3fp-paper
3D molecular fingerprints (E3FP) paper repo
https://github.com/keiserlab/e3fp-paper
3d cheminformatics e3fp fingerprint molecular paper python
Last synced: 2 days ago
JSON representation
3D molecular fingerprints (E3FP) paper repo
- Host: GitHub
- URL: https://github.com/keiserlab/e3fp-paper
- Owner: keiserlab
- License: lgpl-3.0
- Created: 2016-07-05T16:57:30.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-03-14T02:41:59.000Z (over 3 years ago)
- Last Synced: 2024-11-03T03:26:59.453Z (17 days ago)
- Topics: 3d, cheminformatics, e3fp, fingerprint, molecular, paper, python
- Language: Python
- Homepage:
- Size: 9.42 MB
- Stars: 14
- Watchers: 7
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Extended 3-Dimensional FingerPrint (E3FP) Paper Materials
[E3FP](https://github.com/keiserlab/e3fp) is a computational method for
generating 3D molecular fingerprints. This repository serves as an application
of E3FP and contains a Python 2.7.x-compatible library and all scripts
necessary to reproduce the analyses and figures in the E3FP
paper[1](#axen2017).## Table of Contents
- [Overview](#overview)
- [Dependencies](#dependencies)
+ [Required](#required)
- [Required for Library](#requiredlib)
- [Required for Project](#requiredproj)
+ [Optional](#optional)
- [Setup and Installation](#setup)
- [Usage and Overview](#usage)
- [References](#references)This repository is divided into two sections:
- [`e3fp_paper`](e3fp_paper) is a Python library containing various classes
and methods used in the paper analysis. Specifically, it contains code for
interfacing with SeaWare, an implementation of the Similarity Ensemble
Approach (SEA), loading and saving SEA-compatible filetypes, running
*k*-fold cross-validation, and plotting the results.
- [`project`](project) contains all scripts necessary to run the analyses in
the paper. While instructions are provided, please see the E3FP
paper[1](#axen2017) (preprint available) for detailed
explanations.`e3fp_paper` is compatible with Python 2.7.x. It additionally has the following
dependencies:The following packages and their dependencies must be installed:
- [e3fp](https://github.com/keiserlab/e3fp)
- SeaWare
- [RDKit](http://www.rdkit.org)
- [NumPy](https://www.numpy.org)
- [SciPy](https://www.scipy.org)
- [Pandas](http://pandas.pydata.org)
- [Matplotlib](http://matplotlib.org)
- [scikit-learn](http://scikit-learn.org)
- [nolearn](https://github.com/dnouri/nolearn)
- [python_utilities](https://github.com/sdaxen/python_utilities)In addition to the above packages, these must be installed to run the project
scripts.- [Spearmint](https://github.com/JasperSnoek/spearmint)
- [Seaborn](https://seaborn.pydata.org)
- [NetworkX](https://networkx.github.io)
- [PyGraphviz](https://pygraphviz.github.io)
- [PyMOL](https://www.pymol.org)Some computationally expensive analyses have built-in acceleration with
[python_utilities](https://github.com/sdaxen/python_utilities) that activates
when one of the following packages is installed:- [mpi4py](http://mpi4py.scipy.org)
- [futures](https://pypi.python.org/pypi/futures)Before installing, you must manually install [RDKit](http://www.rdkit.org),
SeaWare, [Spearmint](https://github.com/JasperSnoek/spearmint), and
[PyMOL](https://www.pymol.org). Additionally you will need `pip` and
`setuptools`.### Clone the Repository
0. Install any of the optional dependencies above.
1. Download this repository to your machine.
- Clone this repository to your machine with
`git clone https://github.com/keiserlab/e3fp-paper.git`.
- OR download an archive by navigating to
[https://github.com/keiserlab/e3fp-paper](https://github.com/keiserlab/e3fp-paper)
and clicking "Download ZIP". Extract the archive.
2. Install with
```bash
cd e3fp-paper
pip install .
```To use the Python library in a python script, enter:
```python
import e3fp_paper
```
See [`pipeline.py`](e3fp_paper/pipeline.py) for methods for interfacing E3FP's
[pipeline](https://github.com/keiserlab/e3fp/blob/master/e3fp/pipeline.py)
with the specific filetypes used in the paper library.See the provided [scripts](project/scripts) for applications of E3FP and of
the `e3fp_paper` library.
## References
1. Axen SD, Huang XP, Caceres EL, Gendelev L, Roth BL, Keiser MJ. A Simple
Representation Of Three-Dimensional Molecular Structure.
*J. Med. Chem.* (2017).
doi: [10.1021/acs.jmedchem.7b00696](http://dx.doi.org/10.1021/acs.jmedchem.7b00696). \