Parsing, validation, compilation, and data exchange of Biological Expression Language (BEL)
PyBEL is a pure Python package for parsing and handling biological networks encoded in the Biological Expression Language (BEL). It also facilitates data interchange between common formats and databases such as NetworkX, JSON, JGIF, CSV, SIF, Cytoscape, CX, NDEx, SQL, and Neo4J.
Its companion package, PyBEL Tools, contains a suite of functions and pipelines for analyzing the resulting biological networks.
We realize that we have a name conflict with the python wrapper for the cheminformatics package, OpenBabel. If you’re looking for their python wrapper, see here.
If you find PyBEL useful for your work, please consider citing:
|||Hoyt, C. T., et al. (2017). PyBEL: a Computational Framework for Biological Expression Language. Bioinformatics, 34(December), 1–2.|
PyBEL can be installed easily from PyPI with the following code in your favorite shell:
$ pip install pybel
or from the latest code on GitHub with:
$ pip install git+https://github.com/pybel/pybel.git
Note: while PyBEL works on the most recent versions of Python 3.5, it does not work on 3.5.3 or below due to changes in the typing module.
Compiling a BEL Graph
This example illustrates how the a BEL document from the Human Brain Pharmacome project can be loaded from GitHub.
>>> import pybel >>> url = 'https://raw.githubusercontent.com/pharmacome/knowledge/master/hbp_knowledge/proteostasis/kim2013.bel' >>> graph = pybel.from_url(url)
Displaying a BEL Graph in Jupyter
After installing jinja2 and ipython, BEL graphs can be displayed in Jupyter notebooks.
>>> from pybel.examples import sialic_acid_graph >>> from pybel.io.jupyter import to_jupyter >>> to_jupyter(sialic_acid_graph)
Using the CLI
PyBEL also installs a command line interface with the command
pybel for simple utilities such as data
conversion. In this example, a BEL document is compiled then exported to GraphML
for viewing in Cytoscape.
$ pybel compile ~/Desktop/example.bel $ pybel serialize ~/Desktop/example.bel --graphml ~/Desktop/example.graphml
In Cytoscape, open with
Import > Network > From File.
Contributions, whether filing an issue, making a pull request, or forking, are appreciated. See CONTRIBUTING.rst for more information on getting involved.
This project has been supported by several organizations:
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size pybel-0.14.3-py3-none-any.whl (299.4 kB)||File type Wheel||Python version py3||Upload date||Hashes View hashes|
|Filename, size pybel-0.14.3.tar.gz (345.4 kB)||File type Source||Python version None||Upload date||Hashes View hashes|