How it works
Nothing on this site is copied from a hotspot or signature catalogue. One open file of somatic mutation calls goes in; the hotspots, q-values, spectra and signatures are computed from it by the scripts in tools/, and the tests in tests/ check that the textbook results come back out.
Data
mc3.v0.2.8.PUBLIC.maf.gz, GDC file 1c8cfe5f-e52d-41ba-94da-f15ea1337efc, 753,339,089 bytes, md5 639ad8f8386e98dacc22e439188aa8fa, 3,600,963 rowsmerged_sample_quality_annotations.tsv (GDC 1a7d7be8-675d-4e60-a105-19d4121bdebf, md5 05ddd2270fb1fb24fbdc2fe9bf7384e5), by patient barcode; patients missing there were looked up in the GDC cases APIProtein_position has the residue number only, not "x/length". The length of the exact transcript MC3 annotated against comes from Ensembl GRCh37 (lookup/id, Translation length)Credit: the results here are based upon data generated by the TCGA Research Network: https://www.cancer.gov/tcga. Mutation calls: Ellrott K, Bailey MH, Saksena G, et al. Scalable open science approach for mutation calling of tumor exomes using multiple genomic pipelines. Cell Systems 6(3):271–281.e7 (2018).
Hotspots
A simplified version of the single-residue test of Chang et al. (Nat Biotechnol 2016) behind cancerhotspots.org:
- Only missense calls on the gene's main transcript; a tumour counts once per residue.
- Null: a gene's missense mutations land uniformly over its L residues. For a residue hit by k tumours out of the gene's n, p = P(X ≥ k), X ~ Binomial(n, 1/L).
- Hypermutated tumours (more than 500 passing coding mutations, about 15 per Mb of exome; 912 tumours) count with weight 500 / their coding count, so none of them adds more than 500 mutation-equivalents. Weighted counts use the continuous form of the binomial tail, I1/L(k, n−k+1).
- Multiple testing: every mutated residue is a test (1,416,145 pan-cancer). Benjamini–Hochberg across all of them, and separately across all residues within each cancer type.
- A hotspot is q < 0.01 with at least 3 tumours: 976 pan-cancer in 750 genes, 1,116 (type, residue) pairs per type.
Unlike Chang et al., there is no trinucleotide or tumour-type mutability model and no gene background from silent mutations. Residues that mutate easily (CpG codons), very long genes and small genes with clustered artefacts can therefore look more significant here than in cancerhotspots.org. The test is also conservative for genes whose missense calls are mostly the hotspot itself, because n includes it.
Signatures
- Spectra: every kept substitution, classified by its change and the bases either side. The MAF's
CONTEXTcolumn (11 reference bases, the mutated one in the middle) was checked againstReference_Allelefor every SNV and agreed every time, so no reference genome was needed. Purines are folded to the pyrimidine strand. - NMF: Poisson (KL) non-negative matrix factorisation of the tumour × 96 matrix with multiplicative updates; tumours above 2,000 SNVs scaled down to 2,000 for the fit so a few ultramutated tumours cannot dominate it. For each K from 2 to 15, 8 fits on Poisson-resampled matrices; signatures matched across fits with the Hungarian algorithm.
- K = 7: the largest K whose signatures were stable across the resampled fits (minimum mean cosine to the consensus ≥ 0.80, mean ≥ 0.90) while the median per-tumour reconstruction still improved by at least 0.002. The table is in data/meta.json.
- Exposures: refitted on raw counts with the signatures fixed.
- Labels: each extracted signature gets a description of its own shape ("C>T at NpCpG", "C>T/C>G at TpCpW"), then the family of the closest prototype written from the verbal descriptions in Alexandrov et al., Nature 578:94 (2020, CC BY 4.0). No COSMIC signature matrix is used or redistributed. Clock-like and mismatch-repair signatures both put C>T at CpG; a CpG-type signature is called MMR-like when most tumours it dominates are hypermutated.
- Strand: each signature's C>A calls are split by transcription strand; tobacco-like damage shows more C>A with the C on the transcribed strand, because guanine adducts on the transcribed strand are removed by transcription-coupled repair.
The games
Find the hotspot: a (gene, cancer type) pair with a per-type hotspot of q < 10−4 and at least 5 tumours, on a protein with Pfam domains. You see the domains, not the mutations. Points: 1000 × e−d/D, d = residues to the nearest hotspot of that gene in that type, D = max(8, length/40). Five pairs a day chosen by the UTC date.
Name the culprit: a real tumour (at least 80 SNVs) where one family carries at least 60% of the fitted exposure. Only the cancer type is ever shown, after you answer.
Caveats
- Exomes only: few mutations per tumour, so most single-tumour spectra are noisy, and signature exposures below ~20% are not meaningful for a single tumour.
- MC3 PUBLIC is the open-access subset: calls in regions or callers that needed controlled access are not in it.
- Not a clinical resource. Use cancerhotspots.org, OncoKB or COSMIC under their own terms for anything clinical.