Skip to main content

Python interface for GenPPI (Genomic-based Protein-Protein Interaction prediction)

Project description

GenPPI Python Interface

A Python interface for GenPPI (Genomic-based Protein-Protein Interaction prediction).

Installation

From PyPI (Recommended)

pip install genppi-py

Windows Users - Important Notes

Python Version Requirements:

  • Python 3.8 or higher is required
  • Use only official Python from python.org
  • Do NOT use Python from Microsoft Store (may cause compatibility issues)
  • Ensure "Add Python to PATH" is checked during installation

Development Tools (if installation fails): Some Python packages require compilation. If you encounter errors, install:

Command Usage: After installation, use genppi command (not genppi.py).

From TestPyPI (Development)

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ genppi-py

From Source

git clone https://github.com/santosardr/genppi.git
cd genppi
pip install .

Project Structure

genppi/
├── genppi_py/          # Main package code
├── docs/               # Documentation (LaTeX/PDF)
├── scripts/            # Development and deployment scripts
├── tests/              # Automated tests
├── tools/              # Development tools and configurations
├── README.md           # This file
├── setup.py            # Installation configuration
└── pyproject.toml      # Modern project configuration

For Developers

  • docs/ - Technical documentation in LaTeX/PDF
  • scripts/ - Scripts for build, test and deployment
  • tests/ - Automated tests
  • tools/ - Development tools and configurations

Usage

Command Line Interface

After installation, you can use GenPPI from the command line:

# Basic usage
genppi -dir /path/to/protein/files

# With gene fusion
genppi -dir /path/to/protein/files -genefusion

# Using machine learning
genppi -dir /path/to/protein/files -ml

Download Model and Samples

# Download machine learning model
genppi-download-model

# Download sample data
genppi-download-samples

Python API

from genppi_py.genppi import run_genppi

# Run GenPPI with arguments
run_genppi(['-dir', '/path/to/protein/files', '-genefusion'])

How it Works

When you install the package, it will:

  1. Download the appropriate pre-compiled GenPPI executables for your operating system
  2. Download and extract the machine learning model file (model.dat) using py7zr
  3. Install the Python wrapper that provides a command-line interface

The package uses py7zr library exclusively for extracting multivolume 7z archives (model.7z.001, model.7z.002, model.7z.003).

Dependencies

  • Python 3.8+ (minimum required version)
  • py7zr >= 0.20.0 (for 7z extraction)
  • multivolumefile >= 0.2.3 (for multivolume support)

All dependencies are installed automatically.

Development

Quick Setup

# Clone repository
git clone https://github.com/santosardr/genppi.git
cd genppi

# Install development dependencies
pip install -r tools/requirements-dev.txt

# Install in development mode
pip install -e .

Development Scripts

# Quick check
python scripts/quick_check.py

# Build and test
python scripts/build_and_test.py

# Deploy to TestPyPI
python scripts/deploy_test.py

# Deploy to PyPI
python scripts/deploy_production.py

Running Tests

# Run all tests
python -m pytest tests/

# Run specific test
python tests/test_genppi.py

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

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

genppi_py-0.1.7.tar.gz (26.8 MB view details)

Uploaded Source

Built Distribution

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

genppi_py-0.1.7-py3-none-any.whl (26.7 MB view details)

Uploaded Python 3

File details

Details for the file genppi_py-0.1.7.tar.gz.

File metadata

  • Download URL: genppi_py-0.1.7.tar.gz
  • Upload date:
  • Size: 26.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for genppi_py-0.1.7.tar.gz
Algorithm Hash digest
SHA256 ccf5fe1ebea66a3c9b07065a9a01c10c550cf45ac00bdbee42edc1e11c5fcbe5
MD5 9ca4d44ab9269373da58ea461972784b
BLAKE2b-256 e889e424b46134b5b721e3df3d012e96f284a9ce67bed4ed1b074c5a0607d1b5

See more details on using hashes here.

File details

Details for the file genppi_py-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: genppi_py-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 26.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for genppi_py-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 2e62638f14ae1f69d01e3ed3e42ad399eef06b5ad8dc7f09fbaf73626795549a
MD5 de5a23a81105f001e5fa4f7bdd70285d
BLAKE2b-256 c12d142611eb9a2614e181197357eadc2994d443f5817252fa3d8c858b03e185

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