Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Extended 3-Dimensional FingerPrint (E3FP) Paper Materials

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 paper1.

Table of Contents


This repository is divided into two sections:

  • 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 contains all scripts necessary to run the analyses in the paper. While instructions are provided, please see the E3FP paper1 (preprint available) for detailed explanations.


e3fp_paper is compatible with Python 2.7.x. It additionally has the following dependencies:


Required for Library

The following packages and their dependencies must be installed:

Required for Project

In addition to the above packages, these must be installed to run the project scripts.


Some computationally expensive analyses have built-in acceleration with python_utilities that activates when one of the following packages is installed:

Setup and Installation

Before installing, you must manually install RDKit, SeaWare, Spearmint, and PyMOL. Additionally you will need pip and setuptools.

Clone the Repository

  1. Install any of the optional dependencies above.
  2. Download this repository to your machine.
    • Clone this repository to your machine with git clone
    • OR download an archive by navigating to and clicking "Download ZIP". Extract the archive.
  3. Install with
    cd e3fp-paper
    pip install .

Usage and Overview

To use the Python library in a python script, enter:

import e3fp_paper

See for methods for interfacing E3FP's pipeline with the specific filetypes used in the paper library.

See the provided scripts for applications of E3FP and of the e3fp_paper library.


  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.
    Access the recommendation on F1000Prime