Reconstruction, Analysis and Visualization of Metabolic Networks in Python, a port of the RAVEN Toolbox built on cobrapy
Project description
raven-toolbox
Reconstruction, Analysis and Visualisation of Metabolic Networks — in Python.
raven-toolbox is the Python counterpart of the
RAVEN Toolbox 2 (MATLAB). It builds on
cobrapy for everything cobrapy already does
well (simulation, standard analyses, SBML I/O, model manipulation) and adds the
functionality that's unique to RAVEN:
- De novo reconstruction from KEGG and protein homology (BLAST / DIAMOND).
- Context-specific models from omics data via tINIT / ftINIT, with task-aware gap-filling and the linear-merge MILP reduction.
- Metabolic-task validation (
check_tasks,fitTasks). - Connectivity gap-filling against template models.
- Omics integration — Human Protein Atlas (proteomics + RNA-seq) ingestion.
- Sub-cellular localisation prediction by MILP, with partial-update mode and pluggable predictors (WoLF PSORT, DeepLoc, …).
- N-model comparison; reporter metabolites; FSEOF; flux sampling.
- YAML I/O following the cobra standard, plus geckopy's
ec-*enzyme-constrained fields. SIF export. RAVEN-style Excel export.
The status of every RAVEN function (ported, cheatsheet-mapped to cobra, or explicitly not ported) is documented function-by-function in docs/raven_migration.md.
Design principle
The canonical in-memory object is always a cobra.Model.
There is no parallel RAVEN struct, no ravenCobraWrapper-style adapter. RAVEN-specific
fields that cobra doesn't model natively (rxnMiriams, metDeltaG,
rxnConfidenceScores, …) live in cobra's annotation / notes dictionaries. This
avoids duplicating cobra's data model and keeps raven-toolbox interoperable with the wider
COBRA ecosystem.
Status
raven-toolbox has been validated against MATLAB RAVEN on Human-GEM (5 Hart2015 cell-line models, Jaccard 0.975–0.980 — see docs/humangem_validation.md). The functional scope of the original RAVEN toolbox is covered with two principled omissions:
- MetaCyc-based reconstruction is not implemented and is flagged for removal from
MATLAB RAVEN as well — see IMPROVEMENTS.md under
R-MetaCyc. - Dynamic FBA is not implemented — several maintained Python packages already cover
it (
dfba,reframed,mewpy).
Not yet implemented
Planned or partial functionality still on the books (full detail in docs/todo.md):
- Metabolomics-based scoring in tINIT / ftINIT — passing a non-empty
metabolomicsargument currently raisesNotImplementedError. - Published binary release ZIPs (BLAST / DIAMOND / HMMER) — the resolver in
binaries.pyis ready; the registry is empty until the ZIPs are published as release assets. - Published KEGG data-artefact releases — the build pipeline exists; the artefact bundle is not published yet.
The two principled omissions above (MetaCyc reconstruction, dynamic FBA) are not on this list — they are deliberately out of scope, not pending work.
Installation (development)
git clone https://github.com/SysBioChalmers/raven-toolbox
cd raven-toolbox
pip install -e ".[dev]"
raven-toolbox requires Python ≥ 3.11. Genome-scale (f)tINIT MILPs currently require Gurobi (details on solver portability); toy and unit-test work runs on the open-source GLPK.
Documentation
The documentation is built with Sphinx (MyST Markdown); the source lives in docs/ — see docs/README.md for the layout and local-build instructions. (A hosted ReadTheDocs site is not yet published.)
Relationship to MATLAB RAVEN
raven-toolbox is an independent Python reimplementation of the
RAVEN Toolbox 2, released under the permissive
MIT license. If you use it in scientific work, please cite the RAVEN 2 paper:
Wang H, Marcišauskas S, Sánchez BJ, Domenzain I, Hermansson D, Agren R, Nielsen J, Kerkhoven EJ. (2018) RAVEN 2.0: A versatile toolbox for metabolic network reconstruction and a case study on Streptomyces coelicolor. PLoS Comput Biol 14(10): e1006541.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file raven_toolbox-0.2.0.tar.gz.
File metadata
- Download URL: raven_toolbox-0.2.0.tar.gz
- Upload date:
- Size: 356.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4179ba7f48f90db3b024f33b34cba27a98c0816bc5b46efe63c525401e2c752d
|
|
| MD5 |
b9105dca213b2554b3ac7930d3f26813
|
|
| BLAKE2b-256 |
1203ca355ff8bcca8a61973505f372fa0d3197b9349ca255e556d5fdc1f25dcd
|
File details
Details for the file raven_toolbox-0.2.0-py3-none-any.whl.
File metadata
- Download URL: raven_toolbox-0.2.0-py3-none-any.whl
- Upload date:
- Size: 197.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
188d63929b146f4a9ab00c62e942f9aa14801b6eb4a11cc8da1720c08a24cf50
|
|
| MD5 |
a1ba054c7aa8949ceac4de4f9c05410a
|
|
| BLAKE2b-256 |
67bade46efe10e03f01352056f4bfc09d39437f8b3802fec1af38c085cb1ba63
|