Infer enhancer-promoter and enhancer-enhancer cis-regulatory connections from scATAC-seq using cell-to-cell variability in joint peak accessibility. Cicero, ArchR getCoAccessibility, and SCENIC+ produce peak-pair connection scores; thresholding generates enhancer-gene candidates. Co-accessibility is a hypothesis generator -- it correlates with Hi-C/Micro-C 3D contacts at ~30-50% but is not equivalent. Validate against orthogonal data (Hi-C, CRISPRi-FlowFISH).
BiocManager::install(c('GenomicInteractions', 'BSgenome.Hsapiens.UCSC.hg38'))
# monocle3 and the monocle3-compatible Cicero are GitHub-only (the Bioconductor `cicero` targets monocle2)
remotes::install_github('cole-trapnell-lab/monocle3')
remotes::install_github('cole-trapnell-lab/cicero-release', ref='monocle3')
remotes::install_github('GreenleafLab/ArchR', ref='master')
# SCENIC+ for TF-driven networks (Multiome only); source-only install, pulls in pycisTopic
git clone https://github.com/aertslab/scenicplus && cd scenicplus && pip install .
Inputs: scATAC peak-cell matrix (from Signac, ArchR, or SnapATAC2 preprocessing) and a UMAP/dim-reduction for metacell construction. SCENIC+ additionally requires paired RNA AnnData (Multiome).
Tell your AI agent what you want to do:
- "Run Cicero on a Signac scATAC-seq object to get peak-pair co-accessibility"
- "Use ArchR getCoAccessibility for an ArchR project; connection cutoff 0.5"
- "Find enhancer-gene candidates by overlapping connections with promoters in tssRegion=c(-2000, 500)"
- "Compare Cicero connections against published Hi-C loops to estimate concordance"
- "Run SCENIC+ on Multiome data to infer TF -> enhancer -> gene networks"
"Convert my Signac scATAC peak matrix to a CDS, reduce dimensions with LSI + UMAP, build a Cicero CDS via metacells (k=50), then run_cicero with
window=500000for cis connections. Filter to coaccess > 0.25 as high-confidence."
"Run Cicero separately on each Seurat cluster to capture cell-type-specific connections; merge results with cluster annotation."
"In my ArchR project, addCoAccessibility on PeakMatrix with k=100, knnIteration=500, maxDist=250000 (250 kb cis). Use corCutOff=0.5 for high-confidence."
"Use the strong co-accessibility connections; map one anchor to gene promoters (TSS +/- 2 kb); the other anchor is the candidate enhancer. Output enhancer-gene pairs."
"Take all coaccess > 0.5 connections; overlap them with HiCCUPS loop calls from a published Hi-C dataset matching the cell type. Report the % of Cicero connections supported by Hi-C."
"Run SCENIC+ on Multiome data: pycisTopic for ATAC topics, motif enrichment per topic (cisTarget), then SCENIC+ to integrate with paired RNA. Output TF-enhancer-gene triplets."
window=500000 (cis) by default| Setting | Tool |
|---|---|
| ATAC-only standard | Cicero |
| ATAC-only inside ArchR | ArchR getCoAccessibility |
| Multiome (RNA + ATAC) direct linking | LinkPeaks (Signac) |
| Multiome TF networks | SCENIC+ |
| Pre-computed reference | GeneHancer / FANTOM5 / EpiMap |
| Score | Use |
|---|---|
| > 0.5 | Stringent / high-confidence |
| > 0.25 | Standard reporting (Cicero vignette convention) |
| > 0.05 | Exploratory; many false positives |
| < 0.05 | Not biologically meaningful |
window=500000 (500 kb cis) excludes most distal regulation. Widen for gene desertless TADs; trans connections require Hi-C, not co-accessibility.estimate_distance_parameter() for data-driven choice.