ConsensuSV-pipeline

August 23, 2023 · View on GitHub

What is ConsensuSV?

The tool designed for getting consensus out of multiple SV callers' results.

Important: for the completly automatised fastq-to-vcf (8 SV callers + SNP / Indel calling included) pipeline see: https://github.com/SFGLab/ConsensuSV-pipeline

Citation

If you use ConsensuSV in your research, we kindly ask you to cite the following publication:

@article{Chilinski_ConsensuSVfrom_the_whole-genome_2022,
author = {Chiliński, Mateusz and Plewczynski, Dariusz},
doi = {10.1093/bioinformatics/btac709},
journal = {Bioinformatics},
title = {{ConsensuSV—from the whole-genome sequencing data to the complete variant list}},
year = {2022}
}

Requirements

Requirements:

Parameters

Options:

Short optionLong optionDescription
-f--sv_folderolder containing folders of samples with raw outputs from SV callers (comma-separated). More information on the structure of the samples folder is shown below.
-mod--modelModel used for SV discovery (default: pretrained.model).
-o--outputOutput file prefix (default: consensuSV_).
-m--min_overlapFile with minimum numbers of SVs in the neighbourhood for the SV to be reported (default min_overlaps).
-of--output_folderOutput folder (default: "output/").
-s--samplesSamples to include. By default all in the sv_folder. Comma-separated
-c--callersCallers to include. By default all in the folders. Comma-separated.
-t--trainCreates new model. Requires truth.vcf to be present in all the sv folders. VCF file truth.vcf is preprocessed even if flag --no_preprocess is set. If the model is trained, it is required to rerun the program to get the consensus.
-np--no_preprocessFlag used for skipping the preprocessing process - all the preprocessed files should be in temp/ folder.

Structure of the data folder

The samples should follow the rule seen in the following figure:

Implementation details

The workflow of the algorithm is presented in the following figure:

Comparison to gold-standard set

Examples

The example command used for the training of the neural network model:

python main.py -f /home/ConsensuSV/data/ -t

The example command used for getting the consensus SVs (the model included in the package is trained on the 11 SV callers shown on the example sample folder structure):

python main.py -f /home/ConsensuSV/data/ -o consensuSV