Overview
Variant calling is the computational process of identifying differences between an individual’s genome and a reference genome. These differences range from single nucleotide polymorphisms (SNPs) and small insertions or deletions (indels) to large structural variants such as copy number changes and chromosomal rearrangements. Accurate variant detection is the cornerstone of human genetics, precision medicine, and evolutionary biology. The process requires careful statistical modeling to distinguish genuine biological variation from sequencing errors and alignment artifacts.
Key Concepts
Most variant callers follow a common workflow: sequencing reads are first aligned to a reference genome using tools such as BWA or Bowtie2, then the aligned data are processed to identify positions where the individual’s sequence differs from the reference. The genome analysis toolkit (GATK) best practices pipeline is widely adopted, using a Bayesian approach to calculate genotype likelihoods. Key considerations include coverage depth (higher depth improves confidence), base quality scores, and mapping quality. Variant filtering using hard thresholds or machine learning (e.g., VQSR) removes false positives. Structural variant detection requires specialized tools such as DELLY or Manta that analyze discordant read pairs and split reads.
Applications
Variant calling drives both clinical and research genomics. It identifies mutations underlying rare genetic disorders and informs cancer genomics by revealing somatic mutations in tumor-normal comparisons. Population-scale projects such as the 1000 Genomes Project have catalogued millions of variants to map human diversity. In infectious disease, variant calling tracks pathogen evolution and drug resistance. The accuracy of variant calls depends fundamentally on the quality of next-generation sequencing data and the DNA sequencing platform used.
Practical Protocol
The GATK Best Practices workflow for germline short variant discovery proceeds through several stages. Start with aligned BAM files from BWA-MEM: bwa mem -t 8 -R "@RG\tID:sample\tSM:sample\tLB:lib\tPL:ILLUMINA" reference.fa sample_R1.fastq sample_R2.fastq > aligned.sam. Sort and convert to BAM with samtools sort. Mark duplicates using GATK MarkDuplicates to flag PCR duplicates, then index with samtools index. Base quality score recalibration (BQSR) corrects systematic errors in base qualities: first build a recalibration model with Gatk BaseRecalibrator -R reference.fa -I dedup.bam --known-sites dbsnp.vcf -O recal.table, then apply with Gatk ApplyBQSR -R reference.fa -I dedup.bam --bqsr-recal-file recal.table -O recal.bam. Variant calling on individual samples uses Gatk HaplotypeCaller -R reference.fa -I recal.bam -O sample.g.vcf -ERC GVCF, producing a gVCF for joint genotyping. Aggregate samples with Gatk GenomicsDBImport and call jointly with Gatk GenotypeGVCFs -R reference.fa -V cohort.g.vcf -O raw_variants.vcf. Variant filtering uses Variant Quality Score Recalibration (VQSR): Gatk VariantRecalibrator builds a Gaussian mixture model using known truth sites (HapMap, Omni, 1000G), and Gatk ApplyVQSR applies a tranche filter (typically 99.0% sensitivity for SNPs, 99.5% for indels). For structural variant detection, run Manta with its configuration script followed by workflow execution. Evaluate final call sets with Gatk CollectVariantCallingMetrics and check transition/transversion ratio, a Ti/Tv around 2.0–2.1 indicates high quality for human whole-genome data.