Parsing, validation, compilation, and data exchange of Biological Expression Language (BEL)
Project description
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, 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 there we have a name conflict with the python wrapper for the cheminformatics package, OpenBabel. If you’re looking for their python wrapper, see here.
Stable |
||||
Development |
Citation
If you find PyBEL useful for your work, please consider citing:
Getting Started
This example illustrates how the Selventa Small Corpus can be loaded.
>>> import pybel
>>> graph = pybel.from_url('http://resources.openbel.org/belframework/20150611/knowledge/small_corpus.bel')
>>> graph.number_of_nodes() # Will be smaller than expected because we have the most strict settings enabled
1207
More examples can be found in the documentation and in the PyBEL Notebooks repository.
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
.
Installation
PyBEL can be installed easily from PyPI with the following code in your favorite terminal:
$ pip install pybel
or from the latest code on GitHub with:
$ pip install git+https://github.com/pybel/pybel.git
See the installation documentation for more advanced instructions. Also, check the change log at CHANGELOG.rst.
Contributing
Contributions, whether filing an issue, making a pull request, or forking, are appreciated. See CONTRIBUTING.rst for more information on getting involved. Please add your name to AUTHORS.rst!
Acknowledgements
This package was originally developed as part of the master’s work of Charles Tapley Hoyt at Fraunhofer SCAI.
This software is proudly built with Paul McGuire’s PyParsing package.
Scott Colby designed our logo and provided sage advice
Christian Ebeling for supervision and consultation
Links
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.