Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Overview
A genomic variant is represented by a locus (chromosome + position), reference sequence and list of alternates.
Is common, because of the VCF specification, that the reference and alternate fields contain extra bases not needed for the Variant representation. It is completely valid to specify a variation like chr1:100:AC:AT
, which is absolutely the same variant that chr1:101:C:T
.
The number of possible combinations to represent the same genomic variant is non-unique, so it is mandatory to normalize the representation of the variant in order to determine when two representations are the same or different variants. A failure to recognize this will frequently result in inaccurate analyses.
Steps
The variant normalization focuses on different aspects of the variant representation to make a full normalization.
Chromosome naming
Due to there is not any standard for the chromosome naming, is common to see different names for the same chromosome, depending on the used tools, by adding a prefix to the name. For example, we can see chr[1-22,X,Y]
for the One Thousand Genomes Project. It is known that this is a chromosome, it is no needed to add any prefix for each variant. The list of known chromosome prefixes are: chrom, chrm, chr and ch.
Multi-allelic split
- Split multiallelic variants
- Reorder genotypes and allele based fields (e.g. AD)
|
|
Reference/Alternate Trimming and left alignment
Reference and alternate trimming consists on removing the trailing (right trimming) and leading (left trimming) bases that are identical in both alleles.
Left aligning a variant means shifting the start position of that variant to the left while keeping the same alleles length till it is no longer possible to do so.
Right and Left trimming
Input:
#CHROM POS REF ALT |
Result:
#CHROM POS REF ALT |
Indels and empty alleles
Variants in OpenCB does not require any "context base", i.e. allows empty alleles for reference or alternate. Insertions and deletions are represented with an empty alleles for the reference or alternate.
Deletion
Deletion of one base T
at position 101
#CHROM POS REF ALT |
Both variants will result into the same variant:
#CHROM POS REF ALT |
Insertion
Insertion of one C
at position 201 (between 200 and 201)
#CHROM POS REF ALT |
Both variants will result into the same variant:
#CHROM POS REF ALT |
Ambiguous trimming and left alignment
It may happen that, in case of deletion or insertion in a region of repeated nucleotides, the trimming operation can be done in multiple ways, and determining the position of the INDEL is ambiguous. In this example we can find that there are four possible ways for normalize the variant:
#CHR POS REF ALT |
We guarantee the left alignment by performing first the right trimming. This variant will be normalized as:
#CHR POS REF ALT |
Left alignment
In order to make a correct left alignment, we need the whole reference genome.
The reference genome can be specified with the parameter referenceGenome. If not provided, the left-alignment may be incomplete.
Genotype encoding
There are, basically, two different ways of representing the genotype alleles, with or without the allele sequence. In the second way, instead of using the allele itself, is used the allele code. A 0 value represents the reference allele of the Variant, and any other value is a 1-based index into the alternate alleles. A dot value will represent a missing value.
Using an encoded version will allow to determine easily when a genotype is reference, homozygous or heterozygous.
- Sort unphased genotype alleles
- Codify alleles
Input:
chr1 100 A T A/A T/A A/T T|A T/. |
Result:
chr1 100 A T 0/0 0/1 0/1 1|0 ./1 |
Skip normalization
In certain scenarios, the normalization process could be undesired. This process can be skipped in OpenCGA with the option normalizationSkip.
Having non-normalized variants is highly discouraged.
Table of Contents:
Table of Contents | ||
---|---|---|
|