Skip to content

Latest commit

 

History

History
221 lines (138 loc) · 4.26 KB

File metadata and controls

221 lines (138 loc) · 4.26 KB

GENIE3 GRN Framework

Decoding Regulatory Architecture from RNA-seq Data Using Python

Author: Taufia Hussain
Affiliation: Department of Biosciences, University of Rostock, Germany; DataLens.Tools, Rostock, Germany

Overview

This repository provides a practical computational framework for inferring Gene Regulatory Networks (GRNs) from normalized RNA-seq data using the GENIE3 algorithm (or GRNBoost2) implemented via the arboreto Python library.

The framework is designed as a reproducible methodological resource for researchers in:

  • Bioinformatics
  • Computational Biology
  • Systems Biology
  • Transcriptomics
  • Machine Learning for Biology

Included Files

GENIE3_GRN_Framework/
│
├── manuscript.pdf
├── figures/
│   ├── Figure1_conceptual_workflow.png
│   ├── Figure2_preprocessing_filtering.png
│   ├── Figure3_edge_ranking_selection.png
│   ├── Figure4_network_hubs.png
│
├── code/
│   ├── genie3_grn_pipeline.py
│   ├── generate_grn_publication_figures.py
│   ├── example_expression_matrix.csv
│   ├── example_tf_list.txt
│   ├── requirements.txt
│
├── README.md

Installation

Install required Python packages:

pip install pandas numpy arboreto dask distributed networkx matplotlib

Or:

pip install -r requirements.txt

Input Requirements

1. Expression Matrix (example_expression_matrix.csv)

  • Rows = genes
  • Columns = samples
  • Values = normalized expression values (TPM, CPM, VST, or log-transformed counts)

Example:

Gene,Sample_1,Sample_2
MYC,5.21,5.88
TP53,4.11,4.32
SOX2,7.55,7.21

2. TF List (example_tf_list.txt)

One transcription factor per line:

MYC
TP53
SOX2

Running the Pipeline

Basic GENIE3:

python genie3_grn_pipeline.py \
    --expression example_expression_matrix.csv \
    --tf_list example_tf_list.txt \
    --output_dir results

GRNBoost2 (faster):

python genie3_grn_pipeline.py \
    --expression example_expression_matrix.csv \
    --tf_list example_tf_list.txt \
    --method grnboost2 \
    --output_dir results

Adjustable Parameters

Parameter Description
--min_mean_expression Gene filtering threshold
--top_edges Number of top regulatory edges exported
--method genie3 or grnboost2
--output_dir Output directory

Output Files

Main Outputs:

  • genie3_full_ranked_edges.csv
  • genie3_top_1000_edges.csv
  • candidate_master_regulators.csv
  • network_summary.txt

Biological Interpretation

GENIE3 provides:

  • Candidate TF → target relationships
  • Ranked regulatory interactions
  • Hub transcription factors

Important:

GENIE3:

  • Does not prove causality
  • Is based on statistical dependencies
  • Requires biological validation

Validation recommendations:

  • Literature support
  • ChIP-seq
  • Perturbation studies
  • TRRUST / STRING / RegNetwork databases

Figure Generation

Publication-style figures can be generated using:

python generate_grn_publication_figures.py

This will create:

  • Conceptual workflow
  • Preprocessing overview
  • Edge ranking plots
  • Network topology and hub analysis

Recommended Use Cases

  • Bulk RNA-seq
  • Cancer transcriptomics
  • Developmental biology
  • Regulatory systems analysis
  • Educational training in GRN inference

Citation

Huynh-Thu, V. A., Irrthum, A., Wehenkel, L., & Geurts, P. (2010).
Inferring regulatory networks from expression data using tree-based methods. PLoS ONE, 5(9), e12776.

Moerman, T. et al. (2019).
GRNBoost2 and Arboreto: Efficient and scalable inference of gene regulatory networks. Bioinformatics, 35(12), 2159–2161.

Disclaimer

This resource is intended for methodological and educational purposes.
Predicted regulatory interactions are computational inferences and should not be interpreted as experimentally validated relationships without further evidence.

License

Manuscript:

CC-BY 4.0

Code:

MIT License

Contact

Taufia Hussain
https://datalens.tools
Learning Hub: https://datalens.tools/learning-hub/genie3-rnaseq-grn
info@datalens.tools