Skip to main content

No project description provided

Project description

Filterzyme

Structural filtering pipeline using docking and active site heuristics to prioritze ML-predicted enzyme variants for experimental validation. This tool processes superimposed ligand poses and filters them using geometric criteria such as distances, angles, and optionally, esterase-specific filters or nucleophilic proximity.


Features

  • Analysis of enzyme-ligand docking using multiple docking tools (ML- and physics-based).
  • Optional catalytic nucleophile-focused analysis for esterases or other enzymes with nucleophilic catalytic residues.
  • User-friendly pipeline only using a .pkl file as input and ligand smile strings.

Installation

Environment Setup

Using conda

conda env create -f environment.yml
conda activate filterpipeline

Clone the repository

git clone https://github.com/HelenSchmid/EnzymeStructuralFiltering.git
cd EnzymeStructuralFiltering
pip install .

Coming soon: Install via pip

pip install enzyme-filtering-pipline

Usage Example

The input pandas DataFrame must include:

  • Entry – unique identifier for each enzyme
  • Sequence – amino acid sequence of the enzyme
  • substrate_name – name of the substrate
  • substrate_smiles – SMILES string of substrate e.g. MEHP "CCCCC(CC)COC(=O)C1=CC=CC=C1C(=O)O"
  • substrate_moiety – SMARTS pattern to define chemical moiety of interest within substrate e.g. general ester SMARTS "C(O)(O)"

If cofactors are included, add:

  • cofactor_name – name of the cofactor
  • cofactor_smiles – SMILES string of cofactor e.g. PLP "CC1=NC=C(C(=C1O)C=O)COP(=O)(O)O"
  • cofactor_moiety – SMARTS pattern to define chemical moiety of interest within the cofactor
from filterzyme.pipeline import Pipeline
import pandas as pd

df = pd.read_pickle("example_df.pkl")

pipeline = Pipeline(
        df = df,
        ligand_name="TPP",
        max_matches=1000,                # number of matches during substructure SEARCH
        esterase=0,                      # 1 if interested specifically in esterases
        find_closest_nuc=1,
        num_threads=1,
        skip_catalytic_residue_prediction = False,
        alternative_structure_for_vina = 'Chai', 
        squidly_dir='/nvme2/helen/EnzymeStructuralFiltering/filterzyme/squidly_final_models/',
        base_output_dir="pipeline_output"
    )

pipeline.run()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

filterzyme-0.0.6.tar.gz (52.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

filterzyme-0.0.6-py3-none-any.whl (79.7 kB view details)

Uploaded Python 3

File details

Details for the file filterzyme-0.0.6.tar.gz.

File metadata

  • Download URL: filterzyme-0.0.6.tar.gz
  • Upload date:
  • Size: 52.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for filterzyme-0.0.6.tar.gz
Algorithm Hash digest
SHA256 1723426831189c79f04867b36208a43216ef3041dcad85aa5e63e0aef6e4377e
MD5 63ac8174c8c59dd2daf74ccbcb5b5d68
BLAKE2b-256 a802d7181316561f51538a8ae4b586afccb7eb69f65a7a5d62b795c24bd78a4e

See more details on using hashes here.

File details

Details for the file filterzyme-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: filterzyme-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 79.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for filterzyme-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 63ba26019c7b177e2298dc8985a1adfcba0f8f0dd3c7c9d78b8757f30671582c
MD5 669090a1e9403d70361817fe81bed344
BLAKE2b-256 afe37170f71f9b464a13dcfa92dde501bf9bf36d7e3eda583960ec3ad1763b3b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page