Working with KEGG in Python and NetworkX
KEGGutils is a toolkit designed for working with the Kyoto Encyclopedia of Genes and Genome database in Python with a quick and easy to use interface: in a single line you can download data from KEGG's REST API, organize in a graph-like format provided by NetworkX and immediately start exploring.
KEGGutils is much more than just an API interface: other than a series of tools to better interface yourself with the service, it provides expanded NetworkX classes and methods ( totally nx-compatible ) to handle different types of data and help you better exploit underlying structures. KEGGutils is easily expandable and can be immediately integrated anywhere you use NetworkX to process data.
You can just clone this repo and use it's content as any other python package, but if you just need a super easy drop-in solution KEGGutils is available as a PyPi package:
to install it you just need to run
pip install KEGGutils
and that should be it!
KEGGutils is tested and working against python 3.8
, 3.9
, 3.10
and 3.11
.
3.6
and 3.7
are untested but should work.
To make sure KEGGutils works as it should, a few dependencies must be satisfied:
networkx
matplotlib
awesome-slugify
requests
Pillow
scipy
note: if you use pip to install KEGGutils, it should automatically get the needed dependencies for you!
note: you can create an environment with all the required dependencies using the incldued anaconda environment configurator, you just need to run
conda env create -f keggutils_env.yml
to create a keggutils_env
anaconda environment with all the required dependencies.
In this repo can find four dense yet easy to follow tutorials covering most of KEGGutils's functionalities and more are coming in the next future. To start just follow the links below:
- Tutorial 0 - Basics and KEGG API
- Tutorial 1 - Enzymatic Graphs
- Tutorial 2 - KEGGgraphs, KGGlinkgraphs and KEGGchains
- Tutorial 3 - KEGGpathways
The project is open to contributions and suggestions, just open an issue on the repo or contact me directly (contacts below).
Here are a few useful links
- KEGG: Kyoto Encyclopedia of Genes and Genomes
- KEGG REST API reference page
- KEGG KGML (KEGG Markup Language) reference page
- Networkx Github IO
KEGGutils DOI
BibTeX-style citation:
@software{filippo_maria_castelli_2022_7482523,
author = {Filippo Maria Castelli},
title = {KEGGutils},
month = dec,
year = 2022,
publisher = {Zenodo},
version = {v0.4.1},
doi = {10.5281/zenodo.7482523},
url = {https://doi.org/10.5281/zenodo.7482523}
}
Author:
Filippo Maria Castelli
castelli@lens.unifi.it
LENS, European Laboratory for Non-linear Spectroscopy
Via Nello Carrara 1
50019 Sesto Fiorentino (FI), Italy