Skip to content
Darren J. Lin edited this page Jul 17, 2021 · 3 revisions

Welcome to the Mako wiki!

General Introduction

Mako is designed for SV breakpoints detection based on a breakpoint graph. In particular, Mako first builds breakpoint graph from abnormal alignments, where these alignments can be derived from short-read and long-read (not tested). Afterwards, Mako uses pattern growth to detect the maximal subgraph structure as SVs. Each detected event is given a CXS score, indicating the complexity of detected events. Notably, Mako resolves the potential internal breakpoint connections of complex SV with the detected subgraph structure. For CSV breakpoints detection, Mako is comparable to assembly-based methods and outperformed other signature model-based methods.

Scopes of Mako

Mako is currently designed for high-coverage (>=30X) short-read sequencing data. It can be used to detect both simple and complex SVs from normal and tumor samples.

Running Mako

Step 1: create Mako configuration file

Note: The BAM file should under your working directory.

python ParseMako.py config -b sample.bam -n 30000 -w ./working_dir/ -s sampleName -f /path/to/ref.fa.fai
Step 2: run detection

Run SV discovery with Mako configuration file and default parameter settings.

java -jar Mako.jar -R /path/to/ref.fa -F /path/to/sampleName.mako.cfg

see details of parameter selection in Best practice.

Optional: filter Mako output

It is recommended to filter Mako raw output with RepeatMasker. 'Simple_repeat' might introduce a large number of 'DUP,INS' like events due to short-read mapping issue. This function will be added to ParseMako.py in the next updates.

Step3: convert Mako raw output to VCF format
python ParseMako.py tovcf -m sampleName_mako_calls.txt -o sampleName_mako.vcf -r /path/to/ref.fa -s sampleName

Files format

see details in the Files format page.

Orthogonal validation

see details in the Validations page.