Skip to main content

Genome-wide extraction of reproducible continuous-valued signals hidden in noisy multisample functional genomics data

Project description

Consenrich

Tests PyPI - Version

Consenrich is a sequential genome-wide state estimator for extraction of reproducible, spatially-resolved, epigenomic signals hidden in noisy multisample HTS data.


  • Input:

    • $m \geq 1$ Sequence alignment files -t/--bam_files corresponding to each sample in a given HTS experiment
    • (Optional): $m_c = m$ control sample alignments, -c/--control_files, for each 'treatment' sample (e.g., ChIP-seq)
  • Output: Real-valued 'consensus' epigenomic state estimates (BedGraph/BigWig) and uncertainty metrics.


  • Robust, spatially informative consensus signal tracks representing multiple samples' epigenomic profiles $\implies$ Greater insight for a variety of conventional analyses aiming to construct encompassing regulatory characterizations of sample groups (e.g., consensus peak calling)
  • Models trends and noise profiles for each sample with scale-invariance $\implies$ Enables estimation of target molecular states across data samples generated from multiple related assays, for example, ChIP-seq + CUT-N-RUN or ATAC-seq + DNase-seq
  • Preservation of spectral content $\implies$ Permits targeted detection of structural/spatial patterns associated with specific regulatory properties/states and additional metrics for comparison of HTS data between trait-groups

Several technical features of Consenrich are discussed below.

Example Command-Line Use

  • Run Consenrich on ten ATAC-seq samples in the current directory. Generate a BigWig signal track and inverse-variance-weighted residuals.

    consenrich --bam_files *.bam -g hg38 -o hg38_test_output.tsv --signal_bigwig demo_signal.bw --residual_bigwig demo_ivw_residuals.bw
    

fig1


  • Use Consenrich for ChIP-seq enrichment analysis with treatment/control sample alignments (POL2RA, six donors' colon tissue samples). Generate separate BigWig output tracks for signal estimates and inverse-variance weighted residuals. Use fixed-width genomic intervals of 25bp:

    consenrich \
     --bam_files \
       ENCSR322JEO_POL2RA.bam \
       ENCSR472VBD_POL2RA.bam \
       ENCSR431EHE_POL2RA.bam \
       ENCSR724FCJ_POL2RA.bam \
       ENCSR974HQI_POL2RA.bam \
       ENCSR132XRW_POL2RA.bam \
     --control_files \
       ENCSR322JEO_CTRL.bam \
       ENCSR472VBD_CTRL.bam \
       ENCSR431EHE_CTRL.bam \
       ENCSR724FCJ_CTRL.bam \
       ENCSR974HQI_CTRL.bam \
       ENCSR132XRW_CTRL.bam \
     -g hg38 --step 25 \
     -o Consenrich_POL2RA.tsv \
     --signal_bigwig Consenrich_POL2RA_CTRL_Signal.bw \
     --residual_bigwig Consenrich_POL2RA_CTRL_IVW_Residuals.bw
    

Output ChIPDemo

Download/Install

Consenrich can be easily downloaded and installed from source:

  1. git clone https://github.com/nolan-h-hamilton/Consenrich.git
  2. cd Consenrich
  3. python setup.py sdist bdist_wheel
  4. python -m pip install .
  5. Check installation: consenrich --help

Consenrich is also available via PyPI/pip:

  • pip install consenrich

If managing multiple Python environments, use python -m pip install consenrich. If lacking administrative privileges, running with flag --user may be necessary.

Technical Features

  • Effectively models sample-and-region-varying noise to better integrate data across heterogeneous samples
  • Balances biologically-informed a priori predictions with observed HTS data to determine final estimates
  • Provides interpretable uncertainty quantification with respect to multiple model aspects
  • Runs efficiently in linear time with respect to genome size.

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

consenrich-0.1.0b1.tar.gz (9.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

consenrich-0.1.0b1-py3-none-any.whl (9.2 MB view details)

Uploaded Python 3

File details

Details for the file consenrich-0.1.0b1.tar.gz.

File metadata

  • Download URL: consenrich-0.1.0b1.tar.gz
  • Upload date:
  • Size: 9.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for consenrich-0.1.0b1.tar.gz
Algorithm Hash digest
SHA256 3c1ba3182ace3cc6d80ce7e72242759af058ff319a5e713ef782107dffb55bd7
MD5 809d1ba91392a5e2be6539fd78e5ad8f
BLAKE2b-256 b9714e38ffa820cca8a25254c84c974448884b97e4bfd60d1957c66e50383b16

See more details on using hashes here.

File details

Details for the file consenrich-0.1.0b1-py3-none-any.whl.

File metadata

  • Download URL: consenrich-0.1.0b1-py3-none-any.whl
  • Upload date:
  • Size: 9.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for consenrich-0.1.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 3212fe88ed54b007d59aa7ae06c913cf773f32af7d0745c2cd99c1e3e37dc49b
MD5 3e5ca543cc162c3b5c1937c0f0257e72
BLAKE2b-256 c496a572942784ce0d50e49bb1f7fd70dc1194e4a7011555fd71acdf94775a8d

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