Skip to main content

A Python implementation of the BioPAX object model, and parts of PaxTools.

Project description

PyBioPAX: A python implementation of the BioPAX object model

License DOI Build Documentation PyPI version Python 3

PyBioPAX implements the BioPAX level 3 object model ( http://www.biopax.org/release/biopax-level3-documentation.pdf) as a set of Python classes. It exposes API functions to read OWL files into this object model, and to dump OWL files from this object model. This allows for the processing and creation of BioPAX models natively in Python.

Installation

PyBioPAX can be installed from PyPI as a package:

$ pip install pybiopax

Usage

Reading an OWL file into a BioPaxModel object:

import pybiopax
model = pybiopax.model_from_owl_file('test.owl')

Writing a BioPaxModel into an OWL file:

import pybiopax
pybiopax.model_to_owl_file(model, 'test.owl')

Querying Pathway Commons to get a BioPaxModel object:

import pybiopax
model = pybiopax.model_from_pc_query('pathsfromto', ['MAP2K1'], ['MAPK1'])

Working with the elements of the Python object model:

import pybiopax
model = pybiopax.model_from_pc_query('pathsfromto', ['MAP2K1'], ['MAPK1'])

# Each BioPaxModel instance has an objects attribute which is a dict
# whose keys are object URIs (strings) and values are BioPaxObject instances.
assert isinstance(model.objects, dict)
assert all(isinstance(obj, pybiopax.biopax.BioPaxObject)
           for obj in model.objects.values())

# Let's look at a specific object
bcr = model.objects['BiochemicalReaction_4f689747397d98089c551022a3ae2d88']

# This is a BiochemicalReaction which has a left and a right side. All list/set
# types per the BioPAX specification are represented as lists in the Python
# object model
# Both left and right consist of a single protein
left = bcr.left[0]
assert isinstance(left, pybiopax.biopax.Protein)
assert left.display_name == 'ERK1-2'
right = bcr.right[0]
assert isinstance(right, pybiopax.biopax.Protein)
assert right.display_name == 'ERK1-2-active'

Each BioPaxObject has attributes that are consistent with the BioPAX level 3 specification.

Funding

The development of PyBioPAX is funded under the DARPA Communicating with Computers program (ARO grant W911NF-15-1-0544).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pybiopax-0.0.5.tar.gz (3.5 MB view details)

Uploaded Source

Built Distribution

pybiopax-0.0.5-py3-none-any.whl (15.7 kB view details)

Uploaded Python 3

File details

Details for the file pybiopax-0.0.5.tar.gz.

File metadata

  • Download URL: pybiopax-0.0.5.tar.gz
  • Upload date:
  • Size: 3.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for pybiopax-0.0.5.tar.gz
Algorithm Hash digest
SHA256 3a679a41f3f5ada4017dd33e7f0783d901074833c9e9f8e8c21d73ff23d90ce7
MD5 572c55d38b942f8c61caa6af1d287e98
BLAKE2b-256 b9cbed1faa472c0d8519ff31ec978a431fa9d7f4a6539f96b6cd427b7e2213bb

See more details on using hashes here.

File details

Details for the file pybiopax-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: pybiopax-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 15.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for pybiopax-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 9fcb5ffb3becec2802bccd592a93820a9c92f9f2520531f40631e05f64afcb4a
MD5 a9d1fe3bd81e117396d65fb115fac647
BLAKE2b-256 3889cdb7a231907d4c507ff5060fdf83ee83fe4f904870ecb2051ae4746f31b1

See more details on using hashes here.

Supported by

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