Skip to main content

A Python package for multi-omics data integration and analysis

Project description

pyMultiOmics

pyMultiOmics is a Python package for multi-omics data integration and analysis. It uses the Reactome database to map entities (genes, transcripts, proteins, compounds) to their reactions and pathways. The results is then shown as a network graph. Various analyses such as differential analysis, pathway activity analysis can be performed on this network graph, with the results overlaid on the graph.

Installation

Simply run:

pip install pyMultiOmics

Usage

Example basic usage is shown below:

from pyWebOmics.mapping import Mapper

species_name = DANIO_RERIO
m = Mapper(species_name) \
        .set_gene(gene_data, gene_design) \
        .set_protein(protein_data, protein_design) \
        .set_compound(compound_data, compound_design) \
        .build()

m contains a mapper object, which can be interogated to obtain the data integration results. Please refer to this notebook for a demo.

Once mapping is completed, further analysis can be done. For example, finding DE entities:

from pyMultiOmics.analysis import AnalysisPipeline

ap = AnalysisPipeline(m)

method = INFERENCE_DESEQ
ap.run_de(method, GENES, 'Distal', 'Proximal')
ap.run_de(method, GENES, 'Distal', 'Middle')
ap.run_de(method, GENES, 'Proximal', 'Middle')

method = INFERENCE_LIMMA
ap.run_de(method, PROTEINS, 'Distal', 'Proximal')
ap.run_de(method, PROTEINS, 'Distal', 'Middle')
ap.run_de(method, PROTEINS, 'Proximal', 'Middle')

method = INFERENCE_T_TEST
ap.run_de(method, COMPOUNDS, 'Distal', 'Proximal')
ap.run_de(method, COMPOUNDS, 'Distal', 'Middle')
ap.run_de(method, COMPOUNDS, 'Proximal', 'Middle')

Various queries can now be performed on the pipeline:

  1. Retrieve a single node
from pyMultiOmics.query import QueryBuilder

node_id = '15366'
res = QueryBuilder(ap) \
        .add(Entity(node_id)) \
        .run()
res
  1. Retrieve multiple nodes
node_id = ['15366', 'ENSDARG00000037781', 'F1QAA7']
res = QueryBuilder(ap) \
        .add(Entity(node_id)) \
        .run()
res
  1. Retrieve nodes connected to a single node
query_id = 'F1QAA7'
res = QueryBuilder(ap) \
        .add(Entity(query_id)) \
        .add(Connected()) \
        .run()
res
  1. Retrieve top-10 significantly changing genes
case = 'Distal'
control = 'Proximal'
pval = 0.05
fc_lte = -2
fc_gte = 2
N = 20

res = QueryBuilder(ap) \
        .add(Select(GENES)) \
        .add(SignificantDE(case, control, pval, fc_lte=fc_lte, fc_gte=fc_gte, N=N)) \
        .run()
res
  1. Find the compounds that are connected to the DE genes above
res = QueryBuilder(ap) \
        .add(Select(GENES)) \
        .add(SignificantDE(case, control, pval, fc_lte=fc_lte, fc_gte=fc_gte, N=N)) \
        .add(Connected(data_type=COMPOUNDS)) \
        .run()
res
  1. Retrieve entity info
res = QueryBuilder(ap) \
        .add(Select(GENES)) \
        .add(SignificantDE(case, control, pval, fc_lte=fc_lte, fc_gte=fc_gte, N=N)) \
        .add(Connected()) \
        .add(Info()) \
        .run()
res

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

pyMultiOmics-1.0.4.tar.gz (39.5 MB view details)

Uploaded Source

Built Distribution

pyMultiOmics-1.0.4-py3-none-any.whl (39.6 MB view details)

Uploaded Python 3

File details

Details for the file pyMultiOmics-1.0.4.tar.gz.

File metadata

  • Download URL: pyMultiOmics-1.0.4.tar.gz
  • Upload date:
  • Size: 39.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.1

File hashes

Hashes for pyMultiOmics-1.0.4.tar.gz
Algorithm Hash digest
SHA256 a9b2dd98b132a61bef6fcfeacd5594745ffa5ecf03d8fe37f6d0c5ba92e95500
MD5 6d43ad8ecd57b4a43625a1b7c1522df4
BLAKE2b-256 751cf5f55a092043aae68ea0dab01492fc4604d323477b634d4145f6fb0a7e51

See more details on using hashes here.

File details

Details for the file pyMultiOmics-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: pyMultiOmics-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 39.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.1

File hashes

Hashes for pyMultiOmics-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 240b6f5dfc1c1d3b67c07f6503f2e99c7fe09b4fde2bf3ca26a3c8e11491034e
MD5 7d90e725665a692151477602abcd661a
BLAKE2b-256 83e68df09ea1ac078cc8f3614d459703a55db90c75e0c10160004a5030aa50bf

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