Skip to content

Benchmarking framework for chromatin module detection across bulk and single-cell modalities (semester project, Deplancke Lab, EPFL)

License

Notifications You must be signed in to change notification settings

DeplanckeLab/scCM

Repository files navigation

Scope and purpose

This repository implements a benchmarking framework for chromatin module (CM) detection methods. It is designed to enable systematic comparison of CM detection methods (PHM, Clomics, VCMtools) across bulk and single-cell modalities, with unified downstream analyses including aCM computation, cmQTL analysis, and visualization.

The work was carried out as a semester project (September–December 2025) at the Deplancke Lab of Systems Biology and Genetics, EPFL.

Relationship to original pipeline

This repository is a derived implementation of the Chromatin_modules pipeline developed in the Deplancke Lab by Olga Pushkarev: https://github.com/DeplanckeLab/Chromatin_modules
Relative to the original framework, it introduces a benchmarking-oriented structure with explicit execution ordering, standardized outputs, and parallelized method- and modality-specific workflows.

Scientific ownership of the original pipeline and methodological concepts remains with its original authors.

Execution

  • Scripts and notebooks are numerically indexed (1.0, 2.0.2, 4.0, etc.).
  • Indices define execution order and dependencies.
  • Scripts sharing the same index within a directory are independent and can be run in parallel.

Visualization requires special handling:

  • 4.0_calculate_peak_corr.sh must be run per region of interest (ROI),
  • and re-run for each modality or method to be visualized downstream.

Acknowledgements

Olga Pushkarev, PhD, Deplancke Lab: original pipeline design and methodological framework

Vincent Gardeux, Senior Scientist, Deplancke Lab: supervision

Elisa Bugani, PhD Candidate, Deplancke Lab: supervision

Pipeline overview

A high-level overview of the pipeline is shown below.
A fully detailed per-script flowchart is available under PIPELINE_DETAILED.md

flowchart TD
    subgraph S0["0. Format & Normalize"]
        S0_OUT[("Normalized counts<br/>+ peak BED files")]
    end

    subgraph S1["1. Call CMs"]
        S1_IN(("Input"))
        S1_CLO["Clomics"]
        S1_PHM["PHM"]
        S1_VCM["VCMtools"]
        S1_OUT[("CM tracks & content<br/>(all methods)")]
        S1_IN --> S1_CLO & S1_PHM & S1_VCM --> S1_OUT
    end

    subgraph S2["2. Compare CMs"]
        S2_METH["Per Method<br/>(original)"]
        S2_MOD["Per Modality<br/>(bulk vs sc)"]
        S2_OUT[("Overlap scores<br/>+ similarity stats")]
        S2_METH --> S2_OUT
        S2_MOD --> S2_OUT
    end

    subgraph S3["3. Compute aCMs"]
        S3_SCORES["aCM scores<br/>(clomics | phm | vcmtools)"]
        S3_SIGN["Sign correction"]
        S3_OUT[("Corrected aCM matrix<br/>+ cmQTLs")]
        S3_SCORES --> S3_SIGN --> S3_OUT
    end

    subgraph S4["4. Visualize CMs & ..."]
        S4_ROI{{"For each ROI"}}
        S4_CORR["4.0_calculate_peak_corr.sh"]
        S4_BRANCH_M["Per Method"]
        S4_BRANCH_D["Per Modality"]
        S4_VIZ["Correlation & track plots"]
        S4_ROI --> S4_CORR
        S4_CORR --> S4_BRANCH_M & S4_BRANCH_D --> S4_VIZ
    end

    subgraph S5["5. aCM & cmQTL Analysis"]
        S5_CMP["Compare QTLs<br/>across methods"]
        S5_ANA["cmQTL annotation<br/>& interpretation"]
        S5_CMP --> S5_ANA
    end

    S0_OUT --> S1_IN
    S1_OUT --> S2_METH & S2_MOD
    S1_OUT --> S3_SCORES
    S0_OUT --> S4_ROI
    S1_OUT --> S4_CORR
    S3_OUT --> S5_CMP
    S4_VIZ -.-> S5_ANA

    S2_OUT --> FINAL1[("CM Comparison Reports")]
    S5_ANA --> FINAL2[("cmQTL Results")]
    S4_VIZ --> FINAL3[("Visualizations")]
Loading

About

Benchmarking framework for chromatin module detection across bulk and single-cell modalities (semester project, Deplancke Lab, EPFL)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published