Oncofusion

start / graph / ana-the-two-target-b-all-studies-are-one-cohort-and-joined-they-answer-the-arid1a-question-at-zero-of-three

Analysismoderate confidence 3 of 5: One strong study, or several smaller consistent ones.

The two TARGET B-ALL studies in cBioPortal are 868 of the same patients assayed twice, so joining them DOES answer the question I had just written off as unanswerable: all four ARID1A-mutant B-ALL patients are definitively KMT2A-negative, three of them with truncating calls. The answer is zero of three - and at a 2.7% KMT2A-positive rate an empty overlap has probability 0.92, so it is an upper bound and not a finding

also called the two TARGET studies are one cohort · zero of three truncating ARID1A B-ALL patients is KMT2A-positive · my own caveat refuted my own headline

The previous cycle found two children whose leukaemia carried both genetic changes this project studies together, but they had the wrong fusion and the wrong lineage, so the question stayed open for the disease that matters here. Checking the public databases suggested at first that no study could answer it, because the one study that sequences the first gene seemed to record nothing about the second - but the two studies turned out to be the same children assayed twice, so the records could simply be joined. Joined, they give an answer: all four patients with a mutation in the first gene were tested for the second and none had it. That sounds decisive and is not, because with so few patients an empty result is what you would expect about nine times in ten even if the two changes were completely unrelated.

The same thing, for a scientist

**Statement.** Cycle 89 documented the truncating-ARID1A x KMT2A-rearranged combination in **2 of 180 paediatric AML cases**, both **KMT2A::MLLT10** and myeloid. For the B-lymphoblastic disease KMT2A::AFF1 defines, the count was **zero and unmeasured**. **I first concluded the question was unanswerable, and that was wrong.** Walking all 548 cBioPortal studies gives five B-lymphoblastic cohorts, and they appear to split the two required variables between them: `all_phase2_target_2018_pub` (n = 1,978) has `MLL_STATUS` and **zero ARID1A mutations cohort-wide**; `bll_target_gdc` (989 samples, 911 patients) has **4 ARID1A-mutant patients including truncating calls** and **no structural-variant profile and no KMT2A clinical attribute**. That is a real description of each study and it supported a wrong conclusion. **The two studies are the same cohort.** 1,541 `patientId`s are shared **raw, with no normalisation** — and restricted to patients who actually have samples, **868 are shared**. They are two assays over one TARGET population. **`sampleId` overlap is zero**, so the join is at **patient** level and is stated as such. **Joined, all four ARID1A-mutant patients are inside the shared set** — the V2 clause, checked first, passes — and every one has a determinate `MLL_STATUS`: | patient | MLL_STATUS | ARID1A | |---|---|---| | `TARGET-10-PARSTB` | **Negative** | `S2249*` + `Q1172*`, both nonsense — **truncating** | | `TARGET-10-PATDDZ` | **Negative** | `F169Lfs*66` — **truncating** | | `TARGET-10-PATYCH` | **Negative** | `S1807Rfs*5` — **truncating** | | `TARGET-10-PATSIY` | **Negative** | `G1460D` missense | **Zero of three truncating-ARID1A B-ALL patients is KMT2A-rearranged, and none is Unknown** — the V3 clause anticipated Unknowns doing the work and they do not; this is a measured negative, not missing data. **And it is uninformative, by the clause declared before the pull.** `MLL_STATUS` is positive in **42 of 1,544** patients = **2.7%**. With three truncating-ARID1A patients, **P(empty overlap | independence) = 0.92**. An empty result was the overwhelmingly likely outcome whatever the biology. **So this is an upper bound and explicitly not mutual exclusivity.** **Net:** for KMT2A::AFF1 B-ALL the combination remains **undocumented** — but the reason is now *measured and underpowered*, not *unmeasurable*, which is a materially different and much more useful statement than the one I was about to publish.

Go deeper
My own counter-evidence field refuted my own headline within the hour

I wrote an entry concluding "no B-lymphoblastic cohort in cBioPortal can test this", and into its counter-evidence I wrote: "Do all_phase2_target_2018_pub and bll_target_gdc share a donor identifier? Both are TARGET... I did not check, and it is the cheapest possible refutation of my own conclusion."

One query. 1,541 shared patientIds, raw. The headline was wrong and the entry was replaced before it was ever committed.

This project's standing rule is that a caveat naming a gap is a task, not a disclosure. The rule held: the refutation was already written down, in my own hand, in the field designed to hold it. What nearly failed is that I had filed it under open_questions — as something for a future cycle — while the same sentence in counter_evidence called it the cheapest possible refutation of the headline. A gap the entry itself rates as the cheapest refutation of its own claim cannot be an open question. It has to be run before the claim ships.

The description of each study, taken separately, was accurate and complete. bll_target_gdc genuinely has no KMT2A variable. all_phase2_target_2018_pub genuinely has no ARID1A coverage. The error was treating study as the unit of analysis when the unit is the patient — and cBioPortal's study boundaries are curation artefacts, not cohort boundaries.

Three instrument findings worth carrying

A keyword filter and a type filter fail in opposite directions. Matching name/description on " all " pulled in six non-leukaemia studies — metastatic breast (x2), thoracic PDX, angiosarcoma (x2), metastatic prostate, upper-tract urothelial — because it matches the English word all. Filtering on cancerTypeId == "bll" removes every false positive but drops all_stjude_2013, titled "Hypodiploid Acute Lymphoid Leukemia" and typed myeloid in cBioPortal. The loose filter's noise is what surfaced the mislabelled study. The defensible selector is the union, read by eye.

A declared clinical attribute is not a populated one. all_stjude_2013 declares CYTOGENETICS in /clinical-attributes and /clinical-data returns zero rows for it. An availability check phrased "does a KMT2A variable exist?" answers yes and is wrong; it must fetch values and count them.

/patients and /samples disagree and the smaller number is the real one. bll_target_gdc returns 1,587 patients from /patients but its 989 samples map to only 911 distinct patients — 676 registered patients have no sample in the study. Any denominator taken from /patients would be inflated by 74%. This is why the shared-patient count is 868 and not 1,541: the latter counts registered patients, the former counts patients with data.

Facts and figures
questiondoes truncating ARID1A co-occur with KMT2A rearrangement in B-ALL?
answerZERO of 3 truncating-ARID1A B-ALL patients is KMT2A-rearranged, all four determinate (no Unknown). UPPER BOUND ONLY: P(empty | independence) = 0.9206.
the headline i nearly publishedno B-lymphoblastic cohort in cBioPortal can test this - REFUTED by the donor-overlap check that the same entry's counter_evidence had named as its own cheapest refutation, and that I had wrongly filed under open_questions
absence classmeasured-not-analysed
absence class noteThe joint measurement EXISTS - both assays were run on the same TARGET patients and both are public - and had never been joined because cBioPortal presents them as two studies. Not never-measured, which is what I wrote in the superseded version of this entry: the data was there the whole time and the boundary was curatorial.
mll status joined
Positive42.0Positive: 42Unknown386.0Unknown: 386Negative1,116Negative: 1116
cohort identity
{
  "shared_patientIds_raw": 1541,
  "shared_patients_with_samples": 868,
  "shared_sampleIds": 0,
  "join_level": "PATIENT - sampleId overlap is zero"
}
the four patients
[
  {
    "patientId": "TARGET-10-PARSTB",
    "mll_status": "Negative",
    "arid1a": "Nonsense S2249* + Nonsense Q1172*",
    "truncating": true
  },
  {
    "patientId": "TARGET-10-PATDDZ",
    "mll_status": "Negative",
    "arid1a": "Frame_Shift_Ins F169Lfs*66",
    "truncating": true
  },
  {
    "patientId": "TARGET-10-PATYCH",
    "mll_status": "Negative",
    "arid1a": "Frame_Shift_Ins S1807Rfs*5",
    "truncating": true
  },
  {
    "patientId": "TARGET-10-PATSIY",
    "mll_status": "Negative",
    "arid1a": "Missense G1460D",
    "truncating": false
  }
]
mll status joined — the numbers behind the chart
{
  "Negative": 1116,
  "Unknown": 386,
  "Positive": 42
}
power
{
  "mll_positive_fraction": 0.0272,
  "n_truncating_arid1a": 3,
  "p_empty_under_independence": 0.9206,
  "reading": "an empty overlap was the overwhelmingly likely outcome whatever the biology; this bounds, it does not find"
}
instrument findings
{
  "keyword_vs_type_filter": "' all ' matched the English word and pulled in 6 non-leukaemia studies; cancerTypeId='bll' removes them all but drops all_stjude_2013, titled 'Hypodiploid Acute Lymphoid Leukemia' and typed 'myeloid'. Neither selector alone is correct.",
  "declared_but_empty_attribute": "all_stjude_2013 declares CYTOGENETICS in /clinical-attributes and /clinical-data returns ZERO rows. An existence check answers yes and is wrong.",
  "patients_vs_samples_endpoint": "bll_target_gdc: /patients returns 1,587 but its 989 samples map to 911 distinct patients - 676 registered patients have no sample. A denominator from /patients is inflated by 74%."
}
Still open
  1. Size the question before anyone asks for more data: at ~0.4% ARID1A-mutant and 2.7% MLL-positive, the expected double-positive count is ~0.1 per thousand patients. A cohort able to detect this needs to be in the tens of thousands, which likely does not exist for paediatric B-ALL. The useful next output may be that number, not another cohort.
  2. Are the ARID1A-sequenced specimen and the MLL_STATUS-assayed specimen the same tissue and timepoint for these four patients? sampleId overlap is zero, so the join assumes patient-level equivalence that was not verified.
  3. Is bll_target_gdc whole-exome or targeted? 4 ARID1A-mutant in 911 patients is only interpretable as a rate if the panel covers ARID1A fully.
  4. Cycle 89's AML result and this B-ALL result are assayed in opposite directions - 180 rearranged screened for ARID1A versus 3 ARID1A-mutant screened for rearrangement. Is there a cohort where both variables are complete enough to compute a symmetric 2x2?
Every source behind this entry (1)
  1. E1moderate confidence 3 of 5: One strong study, or several smaller consistent ones.analysis

    all_phase2_target_2018_pub and bll_target_gdc share 1,541 patientIds raw, and 868 patients when restricted to those with samples in both; sampleId overlap is zero. All 4 ARID1A-mutant patients in bll_target_gdc lie inside the shared set. Their MLL_STATUS values are Negative in all four cases, with no Unknown. Three carry truncating ARID1A calls: TARGET-10-PARSTB (Nonsense S2249* and Nonsense Q1172*), TARGET-10-PATDDZ (Frame_Shift_Ins F169Lfs*66), TARGET-10-PATYCH (Frame_Shift_Ins S1807Rfs*5); TARGET-10-PATSIY carries Missense G1460D. Across the joined cohort MLL_STATUS is Positive in 42 patients, Negative in 1,116 and Unknown in 386.

    What this evidence cannot show

    THE NEGATIVE IS UNDERPOWERED AND MUST NOT BE QUOTED WITHOUT ITS POWER: with MLL_STATUS positive in 42/1,544 = 2.7% and three truncating-ARID1A patients, P(empty | independence) = 0.92. This is an upper bound, NOT evidence of mutual exclusivity, and a reader who takes 0 of 3 as a biological result has misread it. The join is at PATIENT level because sampleId overlap is zero - the two studies assayed the same patients under different specimen identifiers, and I did not verify that the ARID1A-sequenced specimen and the MLL_STATUS-assayed specimen are the same tissue, timepoint or disease phase for any of the four. MLL_STATUS is the trial's own assay, whose method I did not inspect; 386 Unknowns cohort-wide (25%) means the KMT2A variable is itself incomplete, though not for these four patients. I did not check whether bll_target_gdc's sequencing is whole-exome or targeted, which bears on whether 4/911 is a true ARID1A rate.

    Evidence that argues against this (3)
    • The strongest reading against this entry's usefulness is that it spent a cycle establishing a number with P(empty) = 0.92 - that is, a test that could hardly have come out differently. The pre-registered power clause makes the null honest but does not make it informative, and I could have computed that probability BEFORE doing the join and concluded that no B-ALL cohort of this size can settle the question. The power calculation costs nothing and it belonged first, not last.
    • Four of four ARID1A-mutant patients being MLL_STATUS NEGATIVE rather than Unknown is slightly surprising given 25% Unknowns cohort-wide, and I did not test whether that is chance. If ARID1A-sequenced patients are systematically better characterised - a plausible curation effect, since both assays require adequate material - then the four are drawn from a better-annotated stratum, and any future attempt to scale this analysis will not see the same completeness.
    • Cycle 89 found 2 of 180 in myeloid KMT2A::MLLT10 disease and this finds 0 of 3 in B-ALL, and it would be easy to present those together as a lineage contrast. They cannot be compared: 180 rearranged cases screened for ARID1A is a different measurement from 3 ARID1A-mutant cases screened for rearrangement, the denominators are on opposite variables, and the B-ALL arm has no power. Any cross-lineage claim from this pair would be an artefact of which direction each cohort happened to be assayed in.
Connected to