Just a little tool to perform second opinions on variant calls. It takes as input a triage VCF file and list of evidence VCF files. Output (written to stdout
) is an opdated version of the triage VCF, where filtered variants that PASS
in any of the evidence VCF files are marked as PASS
.
$ vartriage --help
usage: vartriage [-h] --triage_vcf TRIAGE_VCF --evidence_vcfs EVIDENCE_VCFS
optional arguments:
-h, --help show this help message and exit
--triage_vcf TRIAGE_VCF
VCF file to be triaged
--evidence_vcfs EVIDENCE_VCFS
Comma-separated list of ID:VCF_PATH evidence VCF files
When a variant in un-filtered, two INFO
fields are added in the output VCF file: VTOF
contains the original filter reason before triage, and VTSO
contains a comma-separated list of IDs of evidence VCF files which support the second opinion.
Note that multi-allelic variants are not supported by vartriage
. It is thus recommended to first process input VCF files using bcftools norm -m- foo.vcf.gz
, which splits multi-allelic variants into biallelic variants.
A typical use-case could be to use Strelka as second opinion to Mutect2.
vartriage --triage_vcf mutect2.vcf.gz --evidence_vcfs STRELKA_SNV:strelka.snvs.vcf.gz,STRELKA_INDEL:strelka.indels.vcf.gz | bgzip -c > triaged.vcf.gz
For example, suppose that a variant in mutect2.vcf.gz
is filtered:
chr17 39725187 . C T . clustered_events AS_FilterStatus=SITE;AS_SB_TABLE=196,188|31,49;DP=472;ECNT=5;GERMQ=93;MBQ=35,20;MFRL=268,229;MMQ=60,60;MPOS=35;NALOD=2.30;NLOD=58.69;POPAF=6.00;ROQ=93;TLOD=190.21 GT:AD:AF:DP:F1R2:F2R1:SB 0/0:231,0:5.023e-03:231:115,0:116,0:113,118,0,0 0/1:153,80:0.306:233:74,41:79,39:83,70,31,49
If the same variant is called (but not filtered) in strelka.snvs.vcf.gz
:
chr17 39725187 . C T . PASS SOMATIC;QSS=333;TQSS=2;NT=ref;QSS_NT=3070;TQSS_NT=1;SGT=CC->CT;DP=466;MQ=60.00;MQ0=0;ReadPosRankSum=1.08;SNVSB=0.00;SomaticEVS=19.98 DP:FDP:SDP:SUBDP:AU:CU:GU:TU 232:0:0:0:0,0:232,232:0,0:0,0 232:0:0:0:0,0:151,153:0,0:81,81
then the conclusion after triage is:
chr17 39725187 . C T . PASS AS_FilterStatus=SITE;AS_SB_TABLE=196,188|31,49;DP=472;ECNT=5;GERMQ=93;MBQ=35,20;MFRL=268,229;MMQ=60,60;MPOS=35;NALOD=2.3;NLOD=58.69;POPAF=6;ROQ=93;TLOD=190.21;VTSO=STRELKA_SNV;VTOF=clustered_events GT:AD:AF:DP:F1R2:F2R1:SB 0/0:231,0:0.005023:231:115,0:116,0:113,118,0,0 0/1:153,80:0.306:233:74,41:79,39:83,70,31,49
The recommended way to install vartriage
is by using conda:
$ conda install -c micknudsen vartriage