Skip to content

Commit

Permalink
update README and pyproject.toml
Browse files Browse the repository at this point in the history
  • Loading branch information
qwerty239qwe committed Jan 17, 2025
1 parent ea19d77 commit 83e5ab5
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 12 deletions.
42 changes: 35 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,61 @@
# PPI-net-builder v0.1.0
Protein-Protein Interaction (PPI) network construction and analysis using STRING-db (https://string-db.org/) in Python.

# PPI-net-builder
![PyPI version](https://img.shields.io/pypi/v/ppi-net-builder)
![Python version](https://img.shields.io/badge/python-3.9%2B-blue)
![License](https://img.shields.io/pypi/l/ppi-net-builder)

**PPI-net-builder** is a Python package for constructing and analyzing protein-protein interaction (PPI) networks using the [STRING-db](https://string-db.org/) database.

## Features
- Construct PPI networks from a list of genes.
- Extract high-modality subnetworks.
- Perform enrichment analysis on the main network or its subnetworks.
- Save enrichment plots for visualization.

## Installation
Install the package using pip:

```bash
pip install ppi-net-builder
```

## Usage
Here is an example demonstrating how to use **PPI-net-builder**:

```python
from ppi_net_builder import NetworkBuilder

# List of genes to construct the network
genes = ["p53", "BRCA1", "cdk2", "Q99835"]
annot_file_name = "./annotation.csv" # this will be created later

# Specify the annotation file name (this will be created later)
annot_file_name = "./annotation.csv"

# Initialize the NetworkBuilder
nb = NetworkBuilder(genes,
annot_file_name=annot_file_name,
add_color_nodes=10)

# construct a ppi network, and find high-modality subnetworks
# Construct a PPI network and find high-modality subnetworks
nb.construct_network()
nb.extract_subnets()
print(nb.subnets)

# do enrichment analysis on the main network or subnets
# Perform enrichment analysis on the main network or subnetworks
enrich_df = nb.get_enrichment_table()
print(enrich_df.head())


# Save enrichment analysis plots
nb.save_enrichment_plot(img_file_name="enrichment.png")

```

## Requirements
- Python 3.9 or higher
- Dependencies are automatically installed with the package.

## Contributing
Contributions are welcome! Feel free to submit issues or pull requests to improve the package.

## License
This project is licensed under the MIT License. See the LICENSE file for details.

Empty file added ppi_net_builder/src/__init__.py
Empty file.
8 changes: 3 additions & 5 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,6 @@ push = true
"pyproject.toml" = [
'current_version = "{version}"',
]
"README.md" = [
"{version}",
"{pep440_version}",
]

"ppi_net_builder/__init__.py" = [
'^__version__ = "{version}"$',
]

0 comments on commit 83e5ab5

Please sign in to comment.