Skip to content
chromosomix

Reproducibility

Identical to its reference in the validationHiCRep’s stratum-adjusted correlation (Yang et al. 2017). doi:10.1101/gr.220640.117
In the app
Analysis panel, under 2D tasks: Reproducibility
Command
chromosomix hicrep
Reads
A contact map, and the other maps it is compared with
Also known as
HiCRep, SCC, replicates, similarity, correlation

Reproducibility scores every pair of maps on screen with HiCRep’s stratum-adjusted correlation coefficient, the SCC. A plain correlation of two maps is near 0.9 even for unrelated ones, because every map falls with distance; HiCRep smooths both maps and correlates each diagonal on its own. Use it on replicates before merging them, or to put a number on how far two conditions are apart.

Put the maps side by side in one deck at the same resolution: press + along the edge of the map and drop another file in (Maps side by side). Then choose Reproducibility in the 2D tasks card of the Analysis panel (4) and press run. Every pair of the deck’s maps is compared; with one map, the row waits.

A map at another resolution is left out and named, and a run with no other map on its grid is refused; an .mcool opens at any resolution it stores. A sequence whose length differs between two maps is left out, with a note.

The drawer shows Stratum-adjusted correlation, the matrix of every pair on a fixed 0 to 1 scale; Pooled over every sequence, every pair, highest first; Per sequence, every pair on every sequence, with the strata each pooled; and Correlation by separation, a line per pair.

A deck of three chicken maps of chromosome 7 at 100 kb, DT40 cells in G2 and 5 and 60 minutes into mitosis, beside the Reproducibility drawer: the coefficient matrix over 36 sequences, G2 against 5 min at 0.62 and 60 min against G2 and 5 min at 0.15 and 0.22, the pooled and per-sequence tables, and the correlation by separation with a line per pair.

The same run from a shell, with each other map named after --against:

Terminal window
chromosomix hicrep <map> --against <map> [--<parameter> <value> …] --out <dir>
Terminal window
chromosomix hicrep rep1.mcool::/resolutions/100000 --against rep2.mcool::/resolutions/100000 \
--against rep3.mcool::/resolutions/100000 --out results/

Both settings, like the resolution, change the answer: compare coefficients made with the same settings at the same resolution. furthest separation compared is how many strata count, as hicrep’s dBPMax: 5 Mb is 50 strata at 100 kb. smoothing half-width is the mean filter applied to both maps first; at 0, two shallow replicates can score worse than two deep maps of different conditions.

ParameterTakesDefaultWhat it does
other maps--against <file>a file or address: —The other contact maps to compare with; repeat the flag for each.
sequences--sequences <name,…>sequence names, comma-separatedEvery sequence of the file when left out.Each is scored on its own as well as pooled.
furthest separation compared--maxDistance <n>a whole number, 1 to 500, in bins500Every stratum out to here counts, weighted by the positions it compares — so this moves the answer, as hicrep’s dBPMax does: 5 Mb is 50 strata at 100 kb.
smoothing half-width--smooth <n>a whole number, 0 to 20, in bins1The 2D mean filter HiCRep applies before correlating; 0 measures depth as much as structure on any sparse pair of maps.
use balancing weights--no-balancea switchOn wherever the file carries balancing weights; --no-balance reads the raw counts.—
  • table: a table: TSV
  • matrix: a matrix, a pileup or a heatmap: TSV
  • curve: a curve: TSV

On the command line every file goes into --out as <file stem>.hicrep.<output>.<ext>, and each TSV opens with # lines naming the build, the file and every parameter that produced it.

An SCC is a correlation, at most 1; two maps that agree in structure score near it. The pooled coefficient weights each stratum of each sequence by the positions it compares, so a long chromosome counts for more than a short one. In Per sequence, one sequence far below the others is worth opening on the deck.

Correlation by separation says more than the number. Two maps that agree near the diagonal and part further from it differ in depth; two that disagree at every separation are two experiments. Where a stratum compares nothing, the line has a gap, not a zero.

  • Balancing. In the app a file with weights is read balanced, while HiCRep is defined on raw counts: for hicrep’s own number, run it with --no-balance on the command line.
  • On a deck, every map’s run computes the same pairs, so the all maps tab shows the comparison once.

The arithmetic is that of hicrep 0.2.6, the Python port of the R package: in the validation, on raw counts, every pair agrees with it to the four decimals written.

Documentation of chromosomix v0.20.0 · built from 40ec1ec · source