Skip to main content

PyBEL is a Python software package that parses BEL scripts, validates their semantics, applies common graph algorithms, and facilitates data interchange between common formats and database systems like JSON, CSV, SQL, and Neo4J.

Development:

Stable

Stable Build Status

Stable Coverage Status

Stable Documentation Status

Development

Development Build Status

Development Coverage Status

Development Documentation Status

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)  # NOTE: requires matplotlib as a dependency, which isn't automatically installed

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

This example retrieves a BEL file from a path and exports to a GraphML file for use in Cytoscape.

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

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

Export to Neo4j

This example retrieves a BEL file from a URL, and exports to Neo4j

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

Multiple Export

This example gets a file from stdin and exports to multiple locations, with logging

$ URL="http://resource.belframework.org/belframework/1.0/knowledge/small_corpus.bel"
$ NEO="neo4j:neo4j@localhost:7474"
$
$ curl $URL | pybel convert --neo $NEO --json ~/Desktop/example.json --log-file ~/Desktop/log.txt

Installation

Current version on PyPI Stable Supported Python Versions Apache 2.0 License

PyBEL can be installed easily from PyPI with the following code in your favorite terminal:

pip install pybel

See the documentation for more advanced instructions.

Contributing

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

Acknowledgements

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.3.1.tar.gz (311.9 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for PyBEL-0.3.1.tar.gz
Algorithm Hash digest
SHA256 cb9c672220fb28eef8237a12b47c730a59bb666fb1d844865691eefa0f63442b
MD5 e720fab68f4563301eb33557a24aa16d
BLAKE2b-256 aa215ea0326935a84b84a54f59d1620560daca5866bccf65698a89e4fe2a0b09

See more details on using hashes here.

Release history Release notifications | RSS feed

0.15.5

2 files

0.15.4

2 files

0.15.3

2 files

0.15.2

2 files

0.15.1

2 files

0.15.0

2 files

0.14.10

2 files

0.14.9

2 files

0.14.8

2 files

0.14.7

2 files

0.14.6

2 files

0.14.5

2 files

0.14.4

2 files

0.14.3

2 files

0.14.2

2 files

0.14.1

2 files

0.14.0

2 files

0.13.2

2 files

0.13.1

2 files

0.13.0

2 files

0.12.2

2 files

0.12.1

1 file

0.12.0

1 file

0.11.11

1 file

0.11.10

1 file

0.11.9

1 file

0.11.8

2 files

0.11.7

2 files

0.11.6

2 files

0.11.5

2 files

0.11.4

2 files

0.11.3

1 file

0.11.2

1 file

0.11.1

1 file

0.11.0

2 files

0.10.1

2 files

0.10.0

2 files

0.9.7

2 files

0.9.6

2 files

0.9.5

2 files

0.9.4

2 files

0.9.3

2 files

0.9.2

1 file

0.9.1

1 file

0.9.0

1 file

0.8.1

1 file

0.8.0

1 file

0.7.3

1 file

0.7.2

1 file

0.7.1

1 file

0.7.0

1 file

0.6.2

1 file

0.6.1

1 file

0.6.0

2 files

0.5.11

1 file

0.5.10

1 file

0.5.9

1 file

0.5.8

1 file

0.5.7

2 files

0.5.6

1 file

0.5.5

1 file

0.5.4

1 file

0.5.3

1 file

0.5.2

1 file

0.5.1

1 file

0.5.0

1 file

0.4.4

1 file

0.4.3

1 file

0.4.2

1 file

0.4.1

1 file

0.4.0

1 file

0.3.11

1 file

0.3.10

2 files

0.3.9

1 file

0.3.8

1 file

0.3.7

1 file

0.3.6

1 file

0.3.5

1 file

0.3.4

1 file

0.3.3

1 file

0.3.2

1 file

This release

0.3.1 This release

1 file

0.3.0

1 file

0.2.6

1 file

0.2.5

1 file

0.2.4

1 file

0.2.3

1 file

0.2.2

1 file

0.2.1

1 file

0.2.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page