Detection of Genetic Variants

There are many open-source tools available that enable researchers to perform variant detection from HiC data. We aim to hightlight the tools and commands we use here at Cantata Bio call features. This is not a comprenisve list, nor do we own or manage any of the tools listed below. Please refer to their source document pages for more information or for help in trouble shooting the use of these tools. For each analysis performed below we provide, a link to the tool repo, the input file, the example command, and an example output for you to check your results against.

Example input files (.mcool, .hic, or bam files)

Structural Variants

Recommended Software

Example Command

./hic_breakfinder --bam-file K562.bam --exp-file-inter inter_expect_1Mb.hg38.txt --exp-file-intra intra_expect_100kb.hg38.txt --name hic_breakfinder/K562

Example Output(s)

Interpretation of Structural Variant Results

hic_breakfinder produces a number of results at various resolutions (10Kb, 100Kb, 1Mb), as well as a merged result file containing the deduplicated merged results from all three resolutions. The results file takes the form of a modified bedpe file, which contains two chromosomal positions. For example:

score

chr1

start1

start2

strand1

chr2

start1

start2

strand2

2542.82

chr10

61000000

87000000

+

chr3

17000000

49000000

+

1212.33

chr12

22000000

35000000

-

chr21

24000000

33000000

-

1027.18

chr9

130000000

132000000

-

chr22

22000000

24000000

+

958.968

chr6

16000000

48000000

+

chr16

78000000

86000000

+

875.468

chr9

130000000

132000000

+

chr13

80000000

109000000

-

815.972

chr9

27000000

39000000

-

chr13

19000000

47000000

-

267.066

chr22

11000000

24000000

+

chr13

89000000

108000000

-

246.015

chr18

27000000

28000000

-

chr1

106000000

120000000

-

128.247

chr22

22000000

24000000

-

chr2

148000000

152000000

-

64.0124

chr20

30000000

33000000

+

chr1

107000000

118000000

-

The score column represents the most highly supported structural variants, and is a great place to begin investigating the most significant calls. In the next step, one may wish to visualise the structural variant at the matrix level. There are many tools available for visualizing HiC data at the matrix level. One possible solution is to use the .cool file and plot a region surrounding the two breakpoints using a plotting tool such as hicPlotMatrix from the HiCExplorer analysis suite (https://hicexplorer.readthedocs.io/en/latest/content/tools/hicPlotMatrix.html) For example, the following code can be used to plot a 1Mb window centered on each of the breakpoints:

hicPlotMatrix -m K562.mcool::/resolutions/8000 -out SV.png --region chr9:130000000-132000000 --region2 chr22:22000000-24000000
HiCB_example

The image above depicts an translocation involving chromosome 9 and chromosome 22 (the Philadelphia translocation). The signal seen the upper right-hand quadrant represents trans chromosomal contacts between chromosome 9 and 22. The increase in signal at the center of the image indicates a strong increase in supporting ligation pairs at the SV breakpoint.

Considerations for calling SVs

Be careful when considering other structural variant callers designed for shotgun-based sequencing methods, as these many of these tools are designed to take advantage of discordant read pair information (such as Delly and Manta). As the nature of a proximity ligation library is to artificially create chimeric ligation pairs, all valid ligation pairs will be considered a “discordant” read pair, and thus attempting to use tools that rely on this information will lead to an abundance of false positive calls.

Copy Number Variation

Recommended Software

Example Command

# generate .cnr file
cnvkit.py batch K562.bam -r FlatReference.cnn -p 8 -d K562

# segment into copy number calls
cnvkit.py segment K562.cnr -o K562.cns

Example Output(s)

SNVs and Indels

Recommended Software

Example Command

# assumes bam file and reference are in a directory named /input
docker run -v "in_dir":"/input" -v "out_dir:/output" google/deepvariant:"1.1.0" /opt/deepvariant/bin/run_deepvariant --model_type=WGS --ref=input/hg38.fa --reads=output/K562.bam --output_vcf=K562.vcf --intermediate_results_dir ./tmp --num_shards=8

Example Output(s)

Variant Annotation

The VCF file produced by deepVariant is fully compatible with standard variant annotation pipelines, including: