annotate-vars

Annotate variants with the genes, transcripts and exons at four positions: position_1, position_1 + 1, position_2 - 1 and position_2. position_1 and position_2 are the unchanged bases on each side of a variant. For an SNV, an MNV or a deletion, position_1 + 1 is the first altered base and position_2 - 1 is the last. For every other variant type, position_1 and position_2 describe the variant. A deletion is annotated at its two ends only: a gene or an exon that lies entirely inside it is not listed.

Usage

Template:

exacto annotate-vars \
    --tsv-file <tsv_file> \
    --reference-gene-annotation-file <reference_gene_annotation_file> \
    --reference-gene-annotation-source <reference_gene_annotation_source> \
    --reference-gene-annotation-assembly <reference_gene_annotation_assembly> \
    --reference-gene-annotation-version <reference_gene_annotation_version> \
    --output-tsv-file <output_tsv_file> \
    [--num-threads NUM_THREADS] \
    [--gene-types GENE_TYPES [GENE_TYPES ...]] \
    [--gene-levels GENE_LEVELS [GENE_LEVELS ...]] \
    [--transcript-types TRANSCRIPT_TYPES [TRANSCRIPT_TYPES ...]] \
    [--transcript-levels TRANSCRIPT_LEVELS [TRANSCRIPT_LEVELS ...]]

Example:

exacto annotate-vars \
    --tsv-file tumor_somatic_dna_variants.tsv \
    --reference-gene-annotation-file gencode.gtf.gz \
    --reference-gene-annotation-source gencode \
    --reference-gene-annotation-assembly hg38 \
    --reference-gene-annotation-version v45 \
    --output-tsv-file tumor_somatic_dna_variants_annotated.tsv

Description

Annotate variants with the genes, transcripts and exons at four positions: position_1, position_1 + 1, position_2 - 1 and position_2. position_1 and position_2 are the unchanged bases on each side of a variant. For an SNV, an MNV or a deletion, position_1 + 1 is the first altered base and position_2 - 1 is the last. For every other variant type, position_1 and position_2 describe the variant. A deletion is annotated at its two ends only: a gene or an exon that lies entirely inside it is not listed.

NoteAt a glance

Inputs: *.tsv (DNA or RNA variant calls), *.gtf.gz (gene annotation)

Outputs: *.tsv (every column and row of the input, in the same order, with eight columns appended: position_1_genic_region, position_1_annotation, position_1_plus_1_genic_region, position_1_plus_1_annotation, position_2_minus_1_genic_region, position_2_minus_1_annotation, position_2_genic_region, position_2_annotation)

Typical next step: Optional — adds gene context to a variant table for review

Required arguments

Flag Type Description
--tsv-file str Input TSV file. Expected columns: ‘variant_id’, ‘chromosome_1’, ‘position_1’, ‘chromosome_2’, ‘position_2’, ‘variant_type’, ‘sequence’. Each ‘variant_id’ is on exactly one row. Each chromosome name starts with ‘chr’. At least one chromosome name is in the gene annotation; a warning is written for each name that is not, and its positions are annotated as intergenic. A file without rows, or of zero bytes, gives an output file without rows.
--reference-gene-annotation-file str Reference gene annotation file.
--reference-gene-annotation-source str Reference gene annotation source.
--reference-gene-annotation-assembly str Reference gene annotation assembly (e.g. ‘hg38’).
--reference-gene-annotation-version str Reference gene annotation version (e.g. ‘v41’).
--output-tsv-file str Output TSV file.

Optional arguments

Flag Type Default Description
--num-threads int 4 Number of threads.
--gene-types str protein_coding Reference gene types to include in annotation; give the flag with no values for no filter.
--gene-levels int 1, 2 Reference gene levels to include in annotation; give the flag with no values for no filter.
--transcript-types str protein_coding Reference transcript types to include in annotation; give the flag with no values for no filter.
--transcript-levels int 1, 2 Reference transcript levels to include in annotation; give the flag with no values for no filter.