Skip to main content

Parsing, validation, and analysis of BEL graphs

Project description

PyBEL is a Python software package that parses BEL statements, validates their semantics, applies common graph algorithms, and allows for data interchange between common formats like Neo4J, JSON, CSV, Excel, and SQL.

Stable

Stable Build Status

Stable Coverage Status

Stable Documentation Status

Stable Supported Python Versions

Development

Development Build Status

Development Coverage Status

Development Documentation Status

Development Supported Python Versions

Biological Expression Language (BEL) is a domain specific language that enables the expression of complex molecular relationships and their context in a machine-readable form. Its simple grammar and expressive power have led to its successful use in the IMI project, AETIONOMY, to describe complex disease networks with several thousands of relationships.

PyBEL provides a simple API so bioinformaticians and scientists with limited programming knowledge can easily use it to interface with BEL graphs, but is built on a rich framework that can be extended to develop new algorithms.

>>> import pybel, networkx
>>> g = pybel.from_url('http://resource.belframework.org/belframework/1.0/knowledge/small_corpus.bel')
>>> networkx.draw(g)

Command Line Interface

PyBEL also installs a command line interface with the command pybel for simple utilities such as data conversion. Need help? All logs go to ~/.pybel or add -v for verbose output to the standard error stream

Export for Cytoscape

$ pybel convert --path ~/Desktop/example.bel --graphml ~/Desktop/example.graphml

In Cytoscape, open with Import > Network > From File.

Export to Neo4j

$ URL="http://resource.belframework.org/belframework/1.0/knowledge/small_corpus.bel"
$ NEO="neo4j:neo4j@localhost:7474"
$
$ pybel to_neo --url $URL --neo $NEO

Installation

Installation is as easy as running from your favorite terminal:

pip install pybel

Currently, PyBEL officially supports Python 2.7 and Python 3.5. Builds also pass on Python 3.4, and there are some problems that can be solved with the installation of pandas for Python 3.3 usage.

Contributing

Contributions, whether filing an issue, making a pull request, or forking, are appreciated. See CONTRIBUTING.rst for more information on getting involved.

Acknowledgements

  • PyBEL is proudly built with Paul McGuire’s PyParsing package.

  • Scott Colby designed our logo and provided sage advice

  • PyBEL Core Team: Charles Tapley Hoyt, Andrej Konotopez, Christian Ebeling

Find Us

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

PyBEL-0.2.1.tar.gz (705.0 kB view details)

Uploaded Source

File details

Details for the file PyBEL-0.2.1.tar.gz.

File metadata

  • Download URL: PyBEL-0.2.1.tar.gz
  • Upload date:
  • Size: 705.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for PyBEL-0.2.1.tar.gz
Algorithm Hash digest
SHA256 457790a5b36d88b5535ab18b184b388c7deb21f4e1d9a32ad4f6bbb28d738794
MD5 dd00c2ce4fef5ea8125cefeb5c157bcf
BLAKE2b-256 f43708fda1b308e4083848e176bec9ebc758825409eed2751b266dda7a9f5e3f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page