Each tool uses known sites differently, but what is common to all is that they use them to help distinguish true variants from false positives, which is very important to how these tools work. If you don't provide known sites, the statistical analysis of the data will be skewed, which can dramatically affect the sensitivity and reliability of the results.
In the variant calling pipeline, the only tools that do not strictly require known sites are UnifiedGenotyper and HaplotypeCaller.
If you're working on human genomes, you're in luck. We provide sets of known sites in the human genome as part of our resource bundle, and we can give you specific Best Practices recommendations on which sets to use for each tool in the variant calling pipeline. See the next section for details.
If you're working on genomes of other organisms, things may be a little harder -- but don't panic, we'll try to help as much as we can. We've started a community discussion in the forum on What are the standard resources for non-human genomes? in which we hope people with non-human genomics experience will share their knowledge.
And if it turns out that there is as yet no suitable set of known sites for your organisms, here's how to make your own for the purposes of BaseRecalibration: First, do an initial round of SNP calling on your original, unrecalibrated data. Then take the SNPs that you have the highest confidence in and use that set as the database of known SNPs by feeding it as a VCF file to the base quality score recalibrator. Finally, do a real round of SNP calling with the recalibrated data. These steps could be repeated several times until convergence. Good luck!
Some experimentation will be required to figure out the best way to find the highest confidence SNPs for use here. Perhaps one could call variants with several different calling algorithms and take the set intersection. Or perhaps one could do a very strict round of filtering and take only those variants which pass the test.
|Tool||dbSNP 129||dbSNP >132||Mills indels||1KG indels||HapMap||Omni|
These tools require known indels passed with the
-known argument to function properly. We use both the following files:
This tool requires known SNPs and indels passed with the
-knownSites argument to function properly. We use all the following files:
These tools do NOT require known sites, but if SNPs are provided with the
-dbsnp argument they will use them for variant annotation. We use this file:
For VariantRecalibrator, please see the FAQ article on VQSR training sets and arguments.
This tool requires known SNPs passed with the
-dbsnp argument to function properly. We use the following file:
Dear GATK team,
I am working with maize aDNA and would like to find SNPs called in aDNA samples that are at least as good as those in HapMap.
Am right to assume that variant recalibration is the correct tool for the job? My problem is that I can't find details about format of "resources" used for training. (I would like to see your hapmap.vcf but i can't log in to your ftp; it tells me that there can be only 25 users there).
From your documentation (https://www.broadinstitute.org/gatk/guide/article?id=2805 ; https://www.broadinstitute.org/gatk/guide/article?id=1259 and https://www.broadinstitute.org/gatk/guide/tooldocs/org_broadinstitute_gatk_tools_walkers_variantrecalibration_VariantRecalibrator.php#--resource) I gather that the training set needs to be in vcf file.
Here is my question: Which components are important in resource vcf file; positions? variants? annotations? are SNP calls for each individual important? In other words, is the purpose of training "resource" to 1) find overlapping sites in my vcf and use annotations that are in my vcf or 2) is it the training resource annotations that are being used? If the former is true, would it be possible to use bed files instead? If the latter is true, do I need individual calls? HapMap for my organism has > 1000 individuals and is very heavy; if possible I would like to avoid downloading it all.
Many thanks for your help,
Best wishes, Rafal
Hi, I am following through the best practice pipeline and I am confused of which files I should use as the resource to run VQSR.
I have downloaded 4 files and I just want to make sure which file is which database.
1000G_omni2.5.b37.vcf.gz = omni,vcf 1000G_phase1.snps.high_confidence.b37.vcf.gz = 1000G.vcf dbsnp_138.b37.vcf.gz = snp.vcf hapmap_3.3.b37.vcf.gz = hapmap.vcf
I am planning to unzipped them and run VQSR. Did I download the correct files? If not, could you tell me which files I need to use? Thank you.
I would like to have certain annotations applied only if the variants in the resource and the target have the same genomic change. Ex: In Cosmic the following variants are present.
12 25398284 . C G . PASS Genename=KRAS;MutationAA=p.G12A;MutationCDS=c.35G>C 12 25398284 . C A . PASS Genename=KRAS;MutationAA=p.G12V;MutationCDS=c.35G>T 12 25398284 . C T . PASS Genename=KRAS;MutationAA=p.G12D;MutationCDS=c.35G>A
However, in my VCF file I get the G12A annotation for all variants at this site even if the actual change is G12V or G12D.
Is this possible?