Skip to content
JRowleyLab edited this page Dec 22, 2023 · 2 revisions

Welcome to the CRUSH wiki!

What is CRUSH?

CRUSH (Compartmental Refinement for Ultraprecise Stratification within Hi-C) is a tool that can identify fine-scale compartments in chromatin conformation matrices without the need for high sequencing depth. Compared to the standard eigenvector approach, CRUSH requires only 1/100th the sequencing depth to prodocue compartment calls up essentially fragment-level resolution. Comparison of Hi-C and Micro-C maps also reveals that CRUSH is more consistent across methodologies. It can even be used to call compartments at fine-scale in single-cell Hi-C! CRUSH specializes in identifying fine-scale compartments at high resolutions with significantly lower read depth, which is particularly important for rare or precious samples where deeper sequencing is not feasible.

How does CRUSH work?

CRUSH is actually pretty simple! It iteratively walks through resolutions from coarsest to finest so that the coarse-bin compartment status can help inform the finer bins. It is also based on the notion that loci in the A compartment will interact with loci that have features that correlate with A compartment status, and vice-versa for the B compartment. These initialization states can be exceptionally loosely defined. Indeed the defaults use gene annotations and GC content, which loosely correlate with A and B compartments. While walking through each resolution, CRUSH refines the initialization states based on the interaction preferences for each.

CRUSH runs on either .hic (juicer) or .mcool (cooler) files. In the first step, CRUSH examines the resolutions present in data. It then walks through the resolutions, from coarsest to finest, and estimates each bin's interaction preference for initialA vs. initialB. These preferences are calculated by z-scored and distance-normalized contacts. Once CRUSH finishes with one resolution, it will correct the initialization states for the next resolution, thereby each coarse resolution informs the next finest resolution. We also specify that the compartments called at fine resolution, when visualized at coarse resolution, should approximate compartments that were actually called with the coarse bins. It does so by walking along the chromosome and comparing the resultant compartment values across resolutions.

CRUSH represents an exceptionally useful alternative and overcomes many limitations present in eigenvector-based approaches to compartment identification.

Clone this wiki locally