Skip to content
Datasets/PDC000558

CPTAC AML Study

OpenProject-curated
Clinical Proteomic Tumor Analysis ConsortiumAvailable from PDC

164 acute myeloid leukaemias with proteome, phosphoproteome, acetylome and glycoproteome, plus lipidomics and metabolomics on 98 - one of only three NCI cohorts carrying lipidomic data, openly downloadable.

Can it answer your research question?

3 of 6 supported
  • Overall survival

    Supported

    Vital status and time are populated; median follow-up 1.0 years; 162 cases with follow-up; endpoint: overall survival.API

  • Progression or recurrence

    Not supported

    progression_or_recurrence is informative for no case in the harmonized records.API

  • Treatment response

    Supported

    treatment_outcome is populated for 2% of cases; criteria: Complete Response, Persistent Disease.API

  • Which drug was given

    Not supported

    therapeutic_agents is recorded for no case in the harmonized records.API

  • Stage-adjusted modelling

    Not supported

    ajcc_pathologic_stage is informative for no case in the harmonized records.API

  • Analysis by race or ethnicity

    Supported

    Race is informative for 99% of cases.API

Judged from the repository’s own field completeness (thresholds). “Not measured” means we have not probed that field for this record, not that the data lack it.

At a glance

Every percentage is the repository’s own record of what is filled in
CasesAPI
164
Measurement types
6
Follow-upAPI
12.1 months
for 162 of 164 cases; overall survival
Treatment responseAPI
Recorded
Complete Response, Persistent Disease

SubjectCALC

Myeloid

As filed by the repository

Acute Myeloid LeukemiaHematopoietic and reticuloendothelial systems

Who is in the cohortAPI

A usable value“Not reported” or “unknown”No value recorded
  • Sex97 female · 66 male · 1 not reported
  • Race150 white · 12 other · 1 asian · 1 not reported
  • Ethnicity21 not hispanic or latino · 143 not reported
  • Vital status113 Dead · 50 Alive · 1 no value recorded

What was measured, and on how many

6 measurement types, 4 covering the whole cohort.

  • Acetylome mass spectrometry (TMT18 / DDA)scarce164 of 164 · 100%
  • Glycoproteome mass spectrometry (TMT18 / DDA)scarce164 of 164 · 100%
  • Lipidome mass spectrometry (Label Free / DDA)scarce98 of 164 · 60%
  • Metabolome mass spectrometry (Label Free / DDA)scarce98 of 164 · 60%
  • Phosphoproteome mass spectrometry (TMT18 / DDA)164 of 164 · 100%
  • Proteome mass spectrometry (TMT18 / DDA)164 of 164 · 100%
Platform, files and data levels
AssayPlatformFilesLevels
Acetylome mass spectrometry (TMT18 / DDA)APITMT18-raw, peptide/protein matrix
Glycoproteome mass spectrometry (TMT18 / DDA)APITMT18-raw, peptide/protein matrix
Lipidome mass spectrometry (Label Free / DDA)APILabel Free-raw, peptide/protein matrix
Metabolome mass spectrometry (Label Free / DDA)APILabel Free-raw, peptide/protein matrix
Phosphoproteome mass spectrometry (TMT18 / DDA)APITMT18-raw, peptide/protein matrix
Proteome mass spectrometry (TMT18 / DDA)APITMT18-raw, peptide/protein matrix
How complete all 27 clinical fields are - 8 informative for at least 80% of cases

A field counts as informative only when it holds a real value. “Not reported” blocks an analysis just as a missing field does. Fields marked 1:n can hold several records per case, so they show the share of cases with any record.

Informative - a usable valuePresent but uninformative - “not reported” or “unknown”Absent - no value recorded

Outcome

  • Vital statusAPI>99%
  • Days to deathAPI69%
  • Cause of deathAPI62%
  • Days to recurrenceAPI9%
  • Progression or recurrenceAPI0%
  • Last known disease statusAPI0%

Follow-up

  • Days to last follow-upAPI>99%

Treatment

  • Treatment typeAPI2%
  • Treatment outcomeAPI2%
  • Prior treatmentAPI0%
  • Therapeutic agentsAPI0%
  • Regimen or line of therapyAPI0%
  • Treatment givenAPI0%

Staging

  • AJCC pathologic stageAPI0%
  • AJCC clinical stageAPI0%
  • AJCC pathologic stage (tumor_stage)API0%

Diagnosis

  • Primary diagnosisAPI>99%
  • Tissue or organ of originAPI>99%
  • Prior malignancyAPI0%
  • Synchronous malignancyAPI0%

Pathology

  • Morphology (ICD-O)API>99%
  • Tumor gradeAPI0%
  • Classification of tumorAPI0%

Demographics

  • RaceAPI>99%
  • Sex at birth (gender)API>99%
  • Age at diagnosisAPI>99%
  • EthnicityAPI13%

Access

OpenDownload without an account.API

Direct download from the PDC portal or its API; no account required

Open components
6 analytical fraction studies
License
Open access under the PDC data use terms
Citation requirement
Cite the PDC study identifier and the study's primary publication; PDC asks that the consortium be acknowledged.

What it is good for

Written and checked by a reviewer, not generated from metadata.

  1. 1. How does lipid composition differ across AML subtypes, and does it relate to differentiation state?

    Answerable as shippedn ≈ 98HUMAN

    Lipidomic profiles on 98 primary AML samples, alongside proteome on all 164, allow lipid class abundance to be related to protein markers of myeloid differentiation on the same patients. Measured lipidomics on primary AML at this scale is essentially unavailable elsewhere.

    Statistical note: 98 samples supports class-level comparison and well-powered subgroup contrasts only for common subtypes; rare fusion subgroups will have single-digit counts.

    NeedsLipidomeProteome (mass spectrometry)
  2. 2. Do measured metabolite levels agree with metabolic state inferred from transcript or protein abundance?

    Answerable as shippedn ≈ 98HUMAN

    Metabolomics and proteomics on the same 98 patients allow a direct test of an assumption that a large body of computational metabolic modeling depends on and rarely gets to check.

    Statistical note: This is a methods-validation design; effect sizes are the quantity of interest, not significance.

    NeedsMetabolomeProteome (mass spectrometry)
  3. 3. Does protein acetylation, a modification tightly coupled to metabolic cofactor availability, track measured metabolite levels?

    Answerable as shippedn ≈ 98HUMAN

    Acetylome on 164 cases and metabolome on 98 overlap substantially. Acetylation depends on acetyl-CoA availability, so this cohort can test a mechanistic link that is usually assumed rather than measured.

    NeedsAcetylomeMetabolome
  4. 4. Can glycoproteomic features stratify AML in ways expression cannot?

    Answerable as shippedn ≈ 164HUMAN

    Glycoproteome on all 164 cases; cell-surface glycosylation is directly relevant to immunotherapy target selection in myeloid disease.

    NeedsGlycoproteomeProteome (mass spectrometry)

What it cannot tell you

1 blocking

Written by a reviewer against the source, not inferred from what is missing.

BlockingMissing dataHUMAN

Cytogenetic risk group - the primary stratifier in AML - is not in the PDC clinical records, and neither is any therapeutic agent. A treatment record of any kind exists for 2% of the 164 cases. What the API does serve is vital status and follow-up time for 99% of cases, which is enough for overall survival but not for anything risk-stratified.

Affects: Risk-stratified comparison; Treatment-response analysis

Mitigation: Obtain cytogenetics and treatment from the GDC CPTAC records or the CPTAC data portal and join on case identifier before drawing any risk-stratified conclusion.

MajorHarmonizationHUMAN

Lipidome and metabolome cover 98 cases while the proteomic layers cover 164, so the metabolic analyses run on 60% of the cohort.

Affects: Complete-case multi-omic integration

Mitigation: Report the overlap explicitly and check whether the 98 differ systematically from the rest.

MajorBatch and technical effectsHUMAN

Lipidomic and metabolomic measurements are especially sensitive to sample handling and storage, and batch information is not exposed in the study metadata.

Affects: Quantitative cross-sample comparison

Mitigation: Inspect for batch structure before interpreting; treat absolute levels with caution.

MajorStatistical powerHUMAN

98 samples limits subgroup analysis in a disease with many molecularly defined subtypes.

Affects: Subtype-specific metabolic profiling

Mitigation: Pre-specify a small number of subtype contrasts.

Not appropriate for

  • Prognostic claims that do not adjust for cytogenetic risk. - Vital status and follow-up are present for 99% of cases, so a survival model will fit - but risk group is absent, and in AML it dominates prognosis.HUMAN
  • Treatment-response or resistance analysis from these data. - A treatment record of any kind exists for 2% of the cohort and no agent is named.HUMAN
  • Risk-group comparisons without obtaining cytogenetics separately. - Cytogenetic risk is the primary stratifier in AML and is not present here.HUMAN

Who has used it

Articles that analyzed these data, counted separately from articles that only cited the paper. Only the first counts as reuse.

Analyzed the dataCALC
0
accession in the methods section
Declared using it
0
named in a data availability statement
Cited the paper
-
attention to the publication, not reuse of the data
Against expectation
Not assessed
Reuse assessment
  • Not assessed: insufficient metadata to model expected reuse.

Compared against rgi-huber-v2. See Methods for the model.

Articles that analyzed the data

None found. We searched Europe PMC for this dataset's accessions in article methods, results, tables, figures and data availability statements on 20 Sept 2026. That means our search found nothing, not that nobody has used these data.

Community examples

Share your example

Analyses someone ran on these data end to end, each with a receipt recording when it ran, against which packages and for how long.

intermediate

Where can I find ubiquitylome, lipidome or metabolome data, and which cohorts carry several scarce layers on the same tumors?

Find and use the scarcest measurements in the portfolio

CD2S workbooks · ran 21 Sept 2026
pythonabout a minuteexecuted
Required inputs
  • Public PDC GraphQL API, no account required
  • pandas
Expected outputs
  • Scarcity ranking of every analytical fraction
  • Cohorts carrying two or more scarce layers
  • Layer overlap bounding a complete-case analysis
  • Citation counts demonstrating that PDC accessions are not quoted
  • A chart of per-layer coverage with the complete-case ceiling marked
Steps
  1. Enumerate every PDC study through the public GraphQL endpoint
  2. Rank analytical fractions by number of studies
  3. Group per-fraction studies back into biological cohorts
  4. Report the per-layer case counts that bound a complete-case analysis
  5. Query Europe PMC for each accession to show citation tracing is blind here

Start here

Starter code generated from this record’s own identifiers, then the access steps.

Get the data in code

PDC: file manifest through the GraphQL APIpython

This cohort spans 6 PDC studies (PDC000558, PDC000560, PDC000562, PDC000561, PDC000556, PDC000554). Repeat for each.

import requests

PDC_STUDY = "PDC000558"
API = "https://proteomic.datacommons.cancer.gov/graphql"

def gql(query, **variables):
    r = requests.post(API, json={"query": query, "variables": variables}, timeout=180)
    r.raise_for_status()
    body = r.json()
    if body.get("errors"):
        raise RuntimeError(body["errors"][0]["message"])
    return body["data"]

# filesPerStudy only fills its fields when given the study UUID: called with the
# pdc_study_id it returns the right number of rows with every column null.
study = gql("""query ($id: String!) {
  study(pdc_study_id: $id acceptDUA: true) { study_id study_name }
}""", id=PDC_STUDY)["study"][0]

files = gql("""query ($sid: String!) {
  filesPerStudy(study_id: $sid acceptDUA: true) {
    file_id file_name file_type data_category md5sum file_size signedUrl { url }
  }
}""", sid=study["study_id"])["filesPerStudy"]

print(study["study_name"], "-", len(files), "files")
for f in files[:3]:
    print(f["file_name"], f["data_category"], f["file_size"])
# Each signedUrl.url is a time-limited download link; stream it to disk with requests.get(url, stream=True).
This page as data: limitations firstbash
curl -s https://cd2s.vercel.app/data/datasets/pdc-cptac-aml-study.json | python3 -c '
import json, sys
r = json.load(sys.stdin)
for l in r["limitations"]:
    print(l["severity"].upper(), "-", l["statement"][:120])
print("survival endpoint:", r["longitudinal"]["has_survival_endpoint"], "| treatment response:", r["longitudinal"]["has_treatment_response"])'

Access steps

  1. 1
    Download the lipidomic and metabolomic studies from PDCFor people1 hour

    Open access, no account required.

    https://pdc.cancer.gov/pdc/browse
  2. 2
    Retrieve matching clinical and cytogenetic data from the GDC CPTAC recordsFor people2-3 hours
    https://portal.gdc.cancer.gov/projects/CPTAC-3
  3. 3
    Resolve the study UUID, then fetch the file manifestFor agents

    filesPerStudy keys on the study UUID, not on PDC000558: called with the pdc_study_id it returns the right number of rows with every column null. Resolve the UUID first and pass the terms acknowledgement.

    python - <<'PY'
    import requests
    API = "https://proteomic.datacommons.cancer.gov/graphql"
    
    def gql(query, **variables):
        r = requests.post(API, json={"query": query, "variables": variables}, timeout=180)
        r.raise_for_status()
        body = r.json()
        if body.get("errors"):
            raise RuntimeError(body["errors"][0]["message"])
        return body["data"]
    
    study = gql('query($id:String!){ study(pdc_study_id:$id acceptDUA:true){ study_id } }',
                id="PDC000558")["study"][0]
    files = gql('query($sid:String!){ filesPerStudy(study_id:$sid acceptDUA:true)'
                '{ file_id file_name file_size } }', sid=study["study_id"])["filesPerStudy"]
    print(len(files), "files")
    PY
    https://pdc.cancer.gov/data-dictionary/publicapi-documentation/

    Generated from repository policy. Check the linked policy before downloading.

Provenance

All of it, and more, is in this record’s JSON.

Identifiers

Versions and verification

Metadata retrieved
18 Sept 2026
Review status
Project-curatedCD2S project curation on 18 Sept 2026
Data generation funding
Funded data generation

For softwarerecord JSON