Oncofusion

start / graph / ana-q142-two-of-ten-hand-typed-genomic-intervals-were-wrong-and-both-returned-plausible-numbers

Analysisestablished confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.Q142-aff1-in-primary-infants

Two of ten hand-typed genomic intervals in this beat were on the wrong chromosome or a megabase off, and neither produced an error - one would have published the exact opposite of the truth about PAX5

Two of the ten gene locations I typed from memory were wrong. Neither caused an error message; they just returned believable numbers, one of which said the opposite of what the data actually shows.

The same thing, for a scientist

**What happened.** A targeted region scan over the deposited bigWigs used ten hg38 intervals. Eight were read from an annotation table; **two were typed from memory and both were wrong** [E1]: | region | typed | correct (UCSC refGene) | error | |---|---|---|---| | PAX5 promoter | chr5:132,555,000-132,565,000 | **chr9**:37,030,268-37,038,268 | wrong chromosome | | AFF1 gene | chr4:87,856,000-88,060,000 | chr4:**86,935,001-87,141,054** | ~0.92 Mb off | **Neither failed.** Both intervals exist in hg38, both returned coverage, and both returned *low* values that looked like a real biological result. The PAX5 row read **0.20-0.65x mean promoter** across all 41 libraries. Written up, that becomes *"PAX5 is not occupied by the fusion in primary infant KMT2A::AFF1"*. The true value at the real PAX5 promoter is **11.5-22.0x for KMT2A-N and 27.8-83.1x for ENL** - PAX5 is one of the most strongly fusion-occupied promoters in every sample [E1]. **How it was caught, and it was luck plus one habit.** The habit: the same genes were also scored in a promoter matrix built programmatically from refGene, where PAX5 read 20.85x. The two disagreed by 50-fold and the disagreement was visible because both numbers were printed. **Had only the hand-typed scan been run, nothing in the output would have indicated a problem.** **The rule this beat adopts.** Every interval in `regions.py` is now taken from the downloaded refGene table and the extract is kept beside the script as `coords_from_refgene.tsv`. A coordinate is a fetched value, never a remembered one - and the failure mode to design against is not an exception but a plausible number. **Rate, since a rate is more useful than an anecdote: 2 of 10, i.e. 20% of hand-typed intervals wrong in one sitting.** With the rule of three, a 0-of-10 run would only have bounded the error rate below 30%, so a clean run would not have been reassuring either.

Go deeper
Why a wrong interval is more dangerous than a wrong gene symbol

A mistyped gene symbol usually fails to resolve and raises an error. A mistyped interval always resolves, because every coordinate in the genome has coverage, and coverage in an intergenic desert is low - which is exactly what an unoccupied locus looks like. The error mode of a coordinate is a confident negative result. This corpus writes bounded absences constantly; a hand-typed coordinate is one of the cheapest ways to manufacture a false one.

Facts and figures
scriptanalyses/q142-aff1-in-primary-infants/regions.py
statusrun
result summary2 of 10 hand-typed intervals wrong; both silent; one would have inverted the PAX5 conclusion.
artifactanalyses/q142-aff1-in-primary-infants/coords_from_refgene.tsv
Still open
  1. Do other analyses in this corpus carry hand-typed intervals? A grep for coordinate literals in analyses/ would answer it and has not been run.
Every source behind this entry (1)
  1. E1established confidence 5 of 5: Multiple independent lines of evidence; treated as settled in the field.dataset

    Two of ten hand-typed hg38 intervals used in this beat were wrong - PAX5 placed on chr5 rather than chr9, and AFF1 placed 0.92 Mb from its true span - and both returned plausible low coverage values rather than errors; the corrected PAX5 promoter carries KMT2A-N at 11.5-22.0x mean promoter against 0.20-0.65x at the wrong interval.

    GSE252378 - AutoCUT&RUN and AutoCUT&Tag profiles of 36 MLL-rearranged leukemia samples (171 GSMs, hg38) · Janssens DH, Henikoff S (Fred Hutchinson Cancer Center / Van Andel Institute) · NCBI Gene Expression Omnibus 2024
    What this evidence cannot show

    A self-report of an error in this beat's own working. Both the wrong and the corrected runs are preserved in the beat's analysis directory. The 2-of-10 rate is one sitting by one agent and is not a population estimate.

    Evidence that argues against this (1)
    • The error was caught because an independent programmatic promoter matrix existed. A beat that builds only one instrument has no cross-check, so the lesson generalises only to the extent that two independent coordinate sources are affordable - which they usually are, but the habit being recommended costs a download and a join. Janssens DH et al. 2024
Connected to