We’re moving the GATK website, docs and forum to a new platform. Read the full story and breakdown of key changes on this blog.
If you happen to see a question you know the answer to, please do chime in and help your fellow community members. We encourage our fourm members to be more involved, jump in and help out your fellow researchers with their questions. GATK forum is a community forum and helping each other with using GATK tools and research is the cornerstone of our success as a genomics research community.We appreciate your help!
Test-drive the GATK tools and Best Practices pipelines on Terra
Check out this blog post to learn how you can get started with GATK and try out the pipelines in preconfigured workspaces (with a user-friendly interface!) without having to install anything.
Picard haplotype map file format
The haplotype map that certain Picard tools require is a file that maps SNPs to LD (linkage disequilibrium) blocks. These tools include Picard CrosscheckReadGroupFingerprints and CheckFingerprint. For these tools, the HAPLOTYPE_MAP parameter defines the file.
- For details on what the tools do and their parameters, see https://broadinstitute.github.io/picard/.
- For an overview of fingerprinting math and comparative results for different data types, see the related poster. You can find a link to posters on this page.
To view the javadoc documentation for tools within the Picard Jar, type
java -jar picard.jar <tool name> -h
As of this writing (5/5/2017, Picard v2.9.0), the HAPLOTYPE_MAP file is a text-based file that tab-separates fields. In a future release of Picard, this field will also accept VCF formats ending in
.bcf. At that time, tools will interpret all other file extensions for this parameter as the original text-based format.
These two formats differ in their requirements as we outline below.
The original haplotype map file format
It has a header and a body as shown.
The body contains a column header line starting with a
# hash followed by lines that annotate SNPs and blocks in high LD.
- NAME is a SNP identifier, e.g. dbSNP rsID
- MAF is minor allele frequency
- ANCHOR_SNP refers to the NAME of a SNP that groups SNPs in high LD with each other. The tool counts all of the SNPs with the same ANCHOR_SNP as one group.
- Although the column header requires the PANELS label, the PANELS column field value is optional.
Again, the SNPs listed with the same ANCHOR_SNP will be in the same haplotype. If there is a discrepancy between the MAFs within a block, the tool considers the MAF of the first SNP, i.e. that with the smallest genomic position, the MAF of the block. Again, MAF stands for minor allele frequency.
The VCF-based haplotype map
Picard v2.10.1+ (released 2017/7/11) accepts this format. Tools will recognize a VCF format if the file extension ends in
.bcf. Tools will interpret all other file extensions fas the original text-based format we describe above.
Click here to download an example file. Here is the body portion of this example file.
- The VCF format haplotype map contains exactly one sample whose genotype calls are all heterozygous, e.g.
- The tool determines haplotype block grouping using phased genotypes (with a pipe
|) and the PS (phase set) format field annotation.
- The INFO field's AF annotation refers to the alternate allele frequency. This is not necessarily the minor allele frequency. This differs from the original haplotype map file format's requirement.
Finally, the VCF specification (v4.2) defines the PS field as follows.
PS : phase set. A phase set is defined as a set of phased genotypes to which this genotype belongs. Phased genotypes for an individual that are on the same chromosome and have the same PS value are in the same phased set. A phase set specifies multi-marker haplotypes for the phased genotypes in the set. All phased genotypes that do not contain a PS subfield are assumed to belong to the same phased set. If the genotype in the GT field is unphased, the corresponding PS field is ignored. The recommended convention is to use the position of the first variant in the set as the PS identifier (although this is not required). (Non-negative 32-bit Integer)