ICAMS (version 2.0.7)

ICAMS: ICAMS: In-depth Characterization and Analysis of Mutational Signatures

Description

Analysis and visualization of experimentally elucidated mutational signatures -- the kind of analysis and visualization in Boot et al., "In-depth characterization of the cisplatin mutational signature in human cell lines and in esophageal and liver tumors", Genome Research 2018, https://doi.org/10.1101/gr.230219.117. "ICAMS" stands for In-depth Characterization and Analysis of Mutational Signatures. ICAMS has functions to read in variant call files (VCFs) and to collate the corresponding catalogs of mutational spectra and to analyze and plot catalogs of mutational spectra and signatures. Handles both "counts-based" and "density-based" catalogs of mutational spectra or signatures.

Catalogs

A key data type in ICAMS is a "catalog" of mutation counts, of mutation densities, or of mutational signatures.

Catalogs are R S3 objects of class matrix and one of several additional classes that specify the types of the mutations represented in the catalog (e.g. SBS96, ID, etc, ...). The possible additional classes are one of SBS96Catalog, SBS192Catalog, SBS1536Catalog, DBS78Catalog, DBS144Catalog, DBS136Catalog, IndelCatalog. as.catalog is the main constructor.

Conceptually, a catalog has one of the following types, which are indicated in the attribute catalog.type:

  1. Matrix of mutation counts (one column per sample), representing (counts-based) mutational spectra (catalog.type = "counts").

  2. Matrix of mutation densities, i.e. mutations per occurrences of source sequences (one column per sample), representing (density-based) mutational spectra (catalog.type = "density").

  3. Matrix of mutational signatures, which are similar to spectra. However where spectra consist of counts or densities of mutations in each mutation class (e.g. ACA > AAA, ACA > AGA, ACA > ATA, ACC > AAC, ...), signatures consist of the proportions of mutations in each class (with all the proportions summing to 1). A mutational signature can be based on either:

    • mutation counts (a "counts-based mutational signature", catalog.type = "counts.signature"), or

    • mutation densities (a "density-based mutational signature", catalog.type = "density.signature").

Catalogs also have the attribute abundance, which contains the counts of different source sequences for mutations. For example, for SBSs in trinucleotide context, the abundances would be the counts of each trinucleotide in the human genome, exome, or in the transcribed region of the genome. See below under TransformCatalog for more information. Abundances logically depend on the species in question and on the part of the genome being analyzed.

In ICAMS functions these can sometimes be inferred from catalog class attribute and function arguments region, ref.genome, and catalog.type. Otherwise they can be provided as an abundance argument. See all.abundance for examples.

Possible values for region are the strings genome, transcript, exome, and unknown; transcript includes entire transcribed regions, i.e. the introns as well as the exons.

If you need to create a catalog from a source other than this package (i.e. other than with ReadCatalog or StrelkaSBSVCFFilesToCatalog, MutectVCFFilesToCatalog, etc.), then use as.catalog.

Creating catalogs from variant call files (VCF files)

  1. StrelkaSBSVCFFilesToCatalog creates 3 SBS catalogs (96, 192, 1536) and 3 DBS catalogs (78, 136, 144) from the Strelka SBS VCFs.

  2. StrelkaIDVCFFilesToCatalog creates ID (indel) catalog from the Strelka ID VCFs.

  3. MutectVCFFilesToCatalog creates 3 SBS catalogs (96, 192, 1536), 3 DBS catalogs (78, 136, 144) and ID (indel) catalog from the Mutect VCFs.

Plotting catalogs

The PlotCatalog functions plot mutational spectra for one sample or plot one mutational signature.

The PlotCatalogToPdf functions plot catalogs of mutational spectra or of mutational signatures to a PDF file.

Wrapper functions to create catalogs from VCFs and plot the catalogs to PDF files

  1. StrelkaSBSVCFFilesToCatalogAndPlotToPdf creates all type of SBS and DBS catalogs from Strelka SBS VCFs and plots the catalogs.

  2. StrelkaIDVCFFilesToCatalogAndPlotToPdf creates an ID (indel) catalog from Strelka ID VCFs and plot it.

  3. MutectVCFFilesToCatalogAndPlotToPdf creates all types of SBS, DBS, and ID catalogs from Mutect VCFs and plots the catalogs.

The <code>ref.genome</code> (reference genome) argument

Many functions take the argument ref.genome.

In order to create a mutational spectrum catalog, ICAMS needs to know the sequence context of the mutations in the VCF file. For this, ICAMS needs the reference genome sequence that matches the VCF file. The ref.genome argument provides this.

ref.genome can be either

  1. A variable from the Bioconductor BSgenome package that contains a particular reference genome, for example BSgenome.Hsapiens.1000genomes.hs37d5.

  2. The strings "hg38" or "GRCh38" are shorthand for BSgenome.Hsapiens.UCSC.hg38, the strings "hg19" or "GRCh37" are shorthand for BSgenome.Hsapiens.1000genomes.hs37d5, and the strings "mm10" or "GRCm38" are shorthand for BSgenome.Mmusculus.UCSC.mm10.

The Bioconductor BSgenome package, two human genomes BSgenome are "imported" by ICAMS and therefore should be installed when ICAMS is installed. These genomes are:

Any other needed reference genomes must be installed separately by the user. Use available.genomes() to get the list of available genomes. Further instructions are at https://bioconductor.org/packages/release/bioc/html/BSgenome.html. Use of ICAMS with other reference genomes is restricted to catalog.type of counts or counts.signature unless the user also creates the necessary abundance vectors. See all.abundance.

Writing catalogs to files

The WriteCatalog functions write a catalog to a file.

Reading catalogs

The ReadCatalog functions read a file that contains a catalog in standardized format.

Transforming catalogs

The TransformCatalog function transforms catalogs of mutational spectra or signatures to account for differing abundances of the source sequence of the mutations in the genome.

For example, mutations from ACG are much rarer in the human genome than mutations from ACC simply because CG dinucleotides are rare in the genome. Consequently, there are two possible representations of mutational spectra or signatures. One representation is based on mutation counts as observed in a given genome or exome, and this approach is widely used, as, for example, at https://cancer.sanger.ac.uk/cosmic/signatures, which presents signatures based on observed mutation counts in the human genome. We call these "counts-based spectra" or "counts-based signatures".

Alternatively, mutational spectra or signatures can be represented as mutations per source sequence, for example the number of ACT > AGT mutations occurring at all ACT 3-mers in a genome. We call these "density-based spectra" or "density-based signatures".

This function can also transform spectra based on observed genome-wide counts to "density"-based catalogs. In density-based catalogs mutations are expressed as mutations per source sequences. For example, a density-based catalog represents the proportion of ACCs mutated to ATCs, the proportion of ACGs mutated to ATGs, etc. This is different from counts-based mutational spectra catalogs, which contain the number of ACC > ATC mutations, the number of ACG > ATG mutations, etc.

This function can also transform observed-count based spectra or signatures from genome to exome based counts, or between different species (since the abundances of source sequences vary between genome and exome and between species).

Collapsing catalogs

The CollapseCatalog functions

  1. Take a mutational spectrum or signature catalog that is based on a fined-grained set of features (for example, single-nucleotide substitutions in the context of the preceding and following 2 bases).

  2. Collapse it to a catalog based on a coarser-grained set of features (for example, single-nucleotide substitutions in the context of the immediately preceding and following bases).

Data

  1. CatalogRowOrder Standard order of rownames in a catalog. The rownames encode the type of each mutation. The rownames denote the mutation types. For example, for SBS96 catalogs, the rowname AGAT represents a mutation from AGA > ATA.

  2. TranscriptRanges Transcript ranges and strand information for a particular reference genome.

Details

ICAMS can read in VCFs generated by Strelka or Mutect, and collate the mutations into "catalogs" of mutational spectra. ICAMS can create and plot catalogs of mutational spectra or signatures for single base substitutions (SBS), double base substitutions (DBS), and small insertions and deletions (ID). It can also read and write these catalogs.