Skip to content

CD2S · Cancer Data to Science

Which cancer dataset can answer your research question?

Describe the analysis you want to run

Built on what NIH-funded research already shares

Finding the data was never the hard part

NIH-funded research already shares
  • cBioPortal228
  • IDC137
  • PDC130
  • GDC93
  • HTAN14
602 datasets, already public
01

Which one can answer my research question?

A portal tells you what is in a dataset, not whether it can answer your question. Finding that out means reading papers and data dictionaries, or downloading it and hoping.

02

How do I download it and clean it up?

Every repository names its fields differently, “not reported” looks the same as a real answer, and joining two cohorts can quietly change who you are studying.

An analysis you can defend, in days instead of months.

What the answer looks like

212 patients, and 4 of the 6 analyses check out

A usable value“Not reported” or “unknown”No value recorded
CGCI-HTMCP-CC212 patients

Cervical cancer in an African cohort. The four fields that decide an outcome analysis hold real values, so the work can start.

What the deciding fields hold

  • Vital status116 dead · 96 alive
  • Race207 black or african american · 4 unknown · 1 not reported
  • Progression or recurrence212 no value recorded
  • Treatment type1:n212 with a record

What was measured10 data types

  • Clinical212 of 212 · 100%
  • Whole-slide tissue images211 of 212 · >99%
  • DICOM medical imaging211 of 212 · >99%
  • Whole genome sequencing124 of 212 · 58%
  • Copy Number Variation124 of 212 · 58%

and 5 more, none on a larger share

So the six verdicts read4 of 6 supported
  • Overall survival: Supported
  • Progression or recurrence: Limited
  • Treatment response: Supported
  • Which drug was given: Supported
  • Stage-adjusted modelling: Not supported
  • Analysis by race or ethnicity: Supported
FM-AD18,004 patients

The largest cohort in the GDC, 85 times the size. It lists all four of the same fields, and holds a usable value in none of them.

What the deciding fields hold

  • Vital status18,004 not reported
  • Race18,004 not reported
  • Progression or recurrence18,004 not reported
  • Treatment type18,004 no value recorded

What was measured2 data types

  • Targeted DNA panel sequencing18,004 of 18,004 · 100%
  • Clinical18,004 of 18,004 · 100%
So the six verdicts read0 of 6 supported
  • Overall survival: Not supported
  • Progression or recurrence: Not supported
  • Treatment response: Not supported
  • Which drug was given: Not supported
  • Stage-adjusted modelling: Not supported
  • Analysis by race or ethnicity: Not supported

Size does not predict this, and no catalog reports it. Every record on the site carries the same six verdicts, so you can tell before you download.

From a page to data on your disk

Every dataset ships code that runs

602
dataset pages carry starter code, generated from that record's own identifiers
588
of them run with no account and no access request
2,373
access steps written out, so nothing stops at a download link
GDC: list open files and download themon the TCGA-BRCA page
import json, requests

PROJECT = "TCGA-BRCA"
filters = {"op": "and", "content": [
    {"op": "in", "content": {"field": "cases.project.project_id", "value": [PROJECT]}},
    {"op": "in", "content": {"field": "access", "value": ["open"]}},
]}
params = {"filters": json.dumps(filters),
          "fields": "file_id,file_name,data_category,data_type,file_size",
          "size": "10000", "format": "JSON"}
files = requests.get("https://api.gdc.cancer.gov/files", params=params, timeout=60).json()["data"]["hits"]
print(len(files), "open files")

# Write a manifest and fetch with the GDC client (https://gdc.cancer.gov/access-data/gdc-data-transfer-tool)
with open("manifest.txt", "w") as fh:
    fh.write("id\n" + "\n".join(f["file_id"] for f in files))
# $ gdc-client download -m manifest.txt

Community examples

6 analyses, and what each one found

Horizontal bars for each probed clinical field, showing the share of cases the field is populated for against the smaller share that carries an informative value, with one-to-many fields marked as not derivable per case.
executed end to endbeginnerpythonabout a minute

Which classes of analysis do this cohort's clinical records actually support, and which are ruled out before I request access?

Audit whether this dataset can answer your question

CD2S workbooks · ran 21 Sept 2026
What it found when it ran
run of 21 Sept 2026
  • Four of the six analysis classes pass for CGCI-HTMCP-CC; stage-adjusted modelling and progression-free endpoints are blocked.
  • Vital status is informative for all 212 cases with 116 deaths, so an overall-survival endpoint is derivable.
  • Both stage fields and the progression field are informative for 0% of cases, which no case count can fix.
  • Four fields hold several records per case, so their per-case share cannot be inferred from a facet count at all.

Where the reuse went

What the field leaned on, and what it walked past

Proven reach

Most reused datasets

articles that analyzed the data

796 reuse studies verified across the corpus, each with the article that names the accession.

Citations against real reuse

Untapped potential

Biggest reuse gaps

used against expected
  1. nsclc_radiogenomics
    211 people · 3 data types · 3 reviewed questions
    3 / 173
    used / expected
  2. CGCI-BLGSP
    388 people · 9 data types
    5 / 60
    used / expected
  3. FM-AD
    18,004 people · 2 data types · 3 reviewed questions
    6 / 45
    used / expected
  4. PDC000443
    159 people · 4 data types
    1 / 12
    used / expected
  5. HCMI-CMDC
    805 people · 10 data types · 3 reviewed questions
    6 / 40
    used / expected
All 20 opportunities

Evidence behind the signal

A citation is not a reuse

Citations to its paper - attention to the findingArticles that used the data - the accession appears in the methods section
CitedUsed

A dataset is drawn only where both numbers were measured, never as a zero standing in for a missing one. 378 of 602 have no citable accession at all, so their reuse cannot be traced - among them cellline_ccle_broad (6,519 citations), skcm_mskcc_2014 (3,437 citations), tmb_mskcc_2018 (3,230 citations). Why the counts are corrected.

Start with your research question