{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "64953a02",
   "metadata": {},
   "source": [
    "# Finding and using the scarcest measurements in the NCI portfolio\n",
    "\n",
    "**Level:** intermediate &nbsp;·&nbsp; **Language:** Python &nbsp;·&nbsp; **Runtime:** about a minute\n",
    "&nbsp;·&nbsp; **Access:** none required - the Proteomic Data Commons is fully open\n",
    "\n",
    "Everyone knows where to find cancer RNA sequencing. Almost nobody knows that the NCI\n",
    "portfolio contains ubiquitylome data on five studies, lipidomics on three, and a single\n",
    "cohort measured seven different ways including protein-protein interactions.\n",
    "\n",
    "This workbook enumerates the entire Proteomic Data Commons through its public GraphQL\n",
    "API, ranks analytical fractions by scarcity, and finds the cohorts where several scarce\n",
    "layers land on the same tumors. No account, no key, no data access request."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "164c9d5c",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-21T00:41:08.891905Z",
     "iopub.status.busy": "2026-09-21T00:41:08.891797Z",
     "iopub.status.idle": "2026-09-21T00:41:11.378673Z",
     "shell.execute_reply": "2026-09-21T00:41:11.377514Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "255 studies across 9 programs\n"
     ]
    }
   ],
   "source": [
    "import json\n",
    "from collections import Counter, defaultdict\n",
    "from urllib.request import Request, urlopen\n",
    "\n",
    "import matplotlib as mpl\n",
    "import matplotlib.pyplot as plt\n",
    "import pandas as pd\n",
    "\n",
    "PDC = \"https://proteomic.datacommons.cancer.gov/graphql\"\n",
    "\n",
    "QUERY = \"\"\"\n",
    "{\n",
    "  allPrograms {\n",
    "    name\n",
    "    projects {\n",
    "      name\n",
    "      studies {\n",
    "        pdc_study_id\n",
    "        submitter_id_name\n",
    "        analytical_fraction\n",
    "        experiment_type\n",
    "        cases_count\n",
    "      }\n",
    "    }\n",
    "  }\n",
    "}\n",
    "\"\"\"\n",
    "\n",
    "\n",
    "def pdc_query(query: str) -> dict:\n",
    "    req = Request(\n",
    "        PDC,\n",
    "        data=json.dumps({\"query\": query}).encode(),\n",
    "        headers={\"Content-Type\": \"application/json\"},\n",
    "    )\n",
    "    with urlopen(req, timeout=180) as r:  # noqa: S310 - fixed, trusted host\n",
    "        return json.loads(r.read().decode())\n",
    "\n",
    "\n",
    "data = pdc_query(QUERY)[\"data\"]\n",
    "\n",
    "rows = []\n",
    "for prog in data[\"allPrograms\"]:\n",
    "    for proj in prog.get(\"projects\") or []:\n",
    "        for st in proj.get(\"studies\") or []:\n",
    "            rows.append(\n",
    "                {\n",
    "                    \"program\": prog[\"name\"],\n",
    "                    \"project\": proj[\"name\"],\n",
    "                    \"pdc_study_id\": st.get(\"pdc_study_id\"),\n",
    "                    \"study\": st.get(\"submitter_id_name\"),\n",
    "                    \"fraction\": st.get(\"analytical_fraction\"),\n",
    "                    \"experiment\": st.get(\"experiment_type\"),\n",
    "                    \"cases\": st.get(\"cases_count\") or 0,\n",
    "                }\n",
    "            )\n",
    "\n",
    "df = pd.DataFrame(rows)\n",
    "print(f\"{len(df)} studies across {df['program'].nunique()} programs\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d3b0ee8f",
   "metadata": {},
   "source": [
    "## 1. Which measurements are actually scarce?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "68f8422b",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-21T00:41:11.380525Z",
     "iopub.status.busy": "2026-09-21T00:41:11.380299Z",
     "iopub.status.idle": "2026-09-21T00:41:11.392133Z",
     "shell.execute_reply": "2026-09-21T00:41:11.391712Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                             n_studies  total_cases\n",
      "fraction                                           \n",
      "Protein-Protein interaction          1          153\n",
      "Lipidome                             3          263\n",
      "Ubiquitylome                         5          520\n",
      "Metabolome                           7          602\n",
      "Glycoproteome                       16         1823\n",
      "Acetylome                           19         1487\n",
      "Phosphoproteome                     95         6958\n",
      "Proteome                           109         7826\n",
      "\n",
      "Scarce fractions (20 or fewer studies): ['Acetylome', 'Glycoproteome', 'Lipidome', 'Metabolome', 'Protein-Protein interaction', 'Ubiquitylome']\n"
     ]
    }
   ],
   "source": [
    "scarcity = (\n",
    "    df.groupby(\"fraction\")\n",
    "    .agg(n_studies=(\"pdc_study_id\", \"nunique\"), total_cases=(\"cases\", \"sum\"))\n",
    "    .sort_values(\"n_studies\")\n",
    ")\n",
    "print(scarcity.to_string())\n",
    "\n",
    "SCARCE = set(scarcity[scarcity[\"n_studies\"] <= 20].index)\n",
    "print(f\"\\nScarce fractions (20 or fewer studies): {sorted(SCARCE)}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f3aef602",
   "metadata": {},
   "source": [
    "Proteome and phosphoproteome are common. Acetylome, glycoproteome, ubiquitylome,\n",
    "metabolome, lipidome and protein-protein interaction are not, and a researcher who\n",
    "needs one of them has very few places to go."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8e79013a",
   "metadata": {},
   "source": [
    "## 2. Which cohorts carry several scarce layers on the same tumors?\n",
    "\n",
    "PDC ships one study per analytical fraction, so the proteome and the ubiquitylome of\n",
    "the same tumors arrive as separate records. Grouping them back into cohorts is what\n",
    "reveals where deep multi-layer analysis is actually possible."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "6d5f7506",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-21T00:41:11.393143Z",
     "iopub.status.busy": "2026-09-21T00:41:11.393078Z",
     "iopub.status.idle": "2026-09-21T00:41:11.406453Z",
     "shell.execute_reply": "2026-09-21T00:41:11.406086Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "130 cohorts; 10 carry two or more scarce layers\n",
      "\n",
      "                       cohort  max_cases  n_fractions  n_scarce                                                                                                  fractions\n",
      "             CPTAC STAD Study        193            7         5 Acetylome, Glycoproteome, Metabolome, Phosphoproteome, Protein-Protein interaction, Proteome, Ubiquitylome\n",
      "              CPTAC AML Study        164            6         4                                  Acetylome, Glycoproteome, Lipidome, Metabolome, Phosphoproteome, Proteome\n",
      " CPTAC GBM Confirmatory Study        118            6         4                                  Acetylome, Glycoproteome, Lipidome, Metabolome, Phosphoproteome, Proteome\n",
      "    CPTAC GBM Discovery Study        111            5         3                                                 Acetylome, Lipidome, Metabolome, Phosphoproteome, Proteome\n",
      "CPTAC UCEC Confirmatory Study        159            4         2                                                        Acetylome, Glycoproteome, Phosphoproteome, Proteome\n",
      "CPTAC LUAD Confirmatory Study        131            4         2                                                         Acetylome, Phosphoproteome, Proteome, Ubiquitylome\n",
      "   CPTAC LSCC Discovery Study        115            4         2                                                         Acetylome, Phosphoproteome, Proteome, Ubiquitylome\n",
      "   CPTAC LUAD Discovery Study        115            4         2                                                         Acetylome, Phosphoproteome, Proteome, Ubiquitylome\n",
      " CPTAC-HCMI-Organoids Phase 1         71            4         2                                                         Acetylome, Phosphoproteome, Proteome, Ubiquitylome\n",
      "        CPTAC non-ccRCC Study         44            4         2                                                       Glycoproteome, Metabolome, Phosphoproteome, Proteome\n"
     ]
    }
   ],
   "source": [
    "import re\n",
    "\n",
    "FRACTION_SUFFIX = re.compile(\n",
    "    r\"\\s*[-]\\s*(?:DIA\\s+|TMT\\s+|Label\\s*Free\\s+)?(?:Intact\\s+|N-linked\\s+|Cyst\\s+Fluid\\s+)?\"\n",
    "    r\"(?:CompRef\\s+)?(?:Proteome|Phosphoproteome|Phosphotyrosine|Acetylome|Glycoproteome|\"\n",
    "    r\"Glycosite-containing\\s+peptide|Ubiquitylome|Metabolome|Lipidome|\"\n",
    "    r\"Protein-protein\\s+Interaction|Proteomics)\\s*$\",\n",
    "    re.IGNORECASE,\n",
    ")\n",
    "\n",
    "\n",
    "def cohort_name(study: str) -> str:\n",
    "    name = (study or \"\").strip()\n",
    "    for _ in range(3):\n",
    "        stripped = FRACTION_SUFFIX.sub(\"\", name).strip(\" -\")\n",
    "        if stripped == name:\n",
    "            break\n",
    "        name = stripped\n",
    "    return name\n",
    "\n",
    "\n",
    "# CompRef studies are inter-laboratory reference materials, not patient cohorts.\n",
    "patients = df[~df[\"study\"].str.contains(\"CompRef\", case=False, na=False)].copy()\n",
    "patients[\"cohort\"] = patients[\"study\"].map(cohort_name)\n",
    "\n",
    "grouped = (\n",
    "    patients.groupby(\"cohort\")\n",
    "    .agg(\n",
    "        n_fractions=(\"fraction\", \"nunique\"),\n",
    "        fractions=(\"fraction\", lambda s: \", \".join(sorted(set(s)))),\n",
    "        max_cases=(\"cases\", \"max\"),\n",
    "    )\n",
    "    .reset_index()\n",
    ")\n",
    "grouped[\"n_scarce\"] = patients.groupby(\"cohort\")[\"fraction\"].apply(\n",
    "    lambda s: len(set(s) & SCARCE)\n",
    ").values\n",
    "\n",
    "deep = grouped[grouped[\"n_scarce\"] >= 2].sort_values(\n",
    "    [\"n_scarce\", \"max_cases\"], ascending=False\n",
    ")\n",
    "print(f\"{len(grouped)} cohorts; {len(deep)} carry two or more scarce layers\\n\")\n",
    "print(deep.head(12)[[\"cohort\", \"max_cases\", \"n_fractions\", \"n_scarce\", \"fractions\"]].to_string(index=False))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6b45e811",
   "metadata": {},
   "source": [
    "## 3. Pick a target and check the layer overlap\n",
    "\n",
    "The trap in multi-omic work is assuming all layers cover all cases. They do not."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "cff0d262",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-21T00:41:11.407316Z",
     "iopub.status.busy": "2026-09-21T00:41:11.407261Z",
     "iopub.status.idle": "2026-09-21T00:41:11.410701Z",
     "shell.execute_reply": "2026-09-21T00:41:11.410386Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Target cohort: CPTAC STAD Study\n",
      "\n",
      "pdc_study_id                    fraction experiment  cases\n",
      "   PDC000622                   Acetylome      TMT18    193\n",
      "   PDC000616               Glycoproteome      TMT18    193\n",
      "   PDC000615             Phosphoproteome      TMT18    193\n",
      "   PDC000614                    Proteome      TMT18    193\n",
      "   PDC000621                  Metabolome Label Free    187\n",
      "   PDC000617                Ubiquitylome Label Free    184\n",
      "   PDC000626 Protein-Protein interaction      TMT10    153\n",
      "\n",
      "largest layer  : 193 cases\n",
      "smallest layer : 153 cases\n",
      "complete-case analysis across every layer is bounded above by 153 cases\n",
      "  -> that is 79% of the largest layer\n"
     ]
    }
   ],
   "source": [
    "TARGET = deep.iloc[0][\"cohort\"] if len(deep) else patients[\"cohort\"].iloc[0]\n",
    "print(f\"Target cohort: {TARGET}\\n\")\n",
    "\n",
    "target = patients[patients[\"cohort\"] == TARGET][\n",
    "    [\"pdc_study_id\", \"fraction\", \"experiment\", \"cases\"]\n",
    "].sort_values(\"cases\", ascending=False)\n",
    "print(target.to_string(index=False))\n",
    "\n",
    "n_max = int(target[\"cases\"].max())\n",
    "n_min = int(target[\"cases\"].min())\n",
    "print(f\"\\nlargest layer  : {n_max} cases\")\n",
    "print(f\"smallest layer : {n_min} cases\")\n",
    "print(f\"complete-case analysis across every layer is bounded above by {n_min} cases\")\n",
    "print(f\"  -> that is {100 * n_min / n_max:.0f}% of the largest layer\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "b9d831bc",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-21T00:41:11.412162Z",
     "iopub.status.busy": "2026-09-21T00:41:11.412084Z",
     "iopub.status.idle": "2026-09-21T00:41:11.414270Z",
     "shell.execute_reply": "2026-09-21T00:41:11.413928Z"
    }
   },
   "outputs": [],
   "source": [
    "# One house style for every figure below: a single accent, one contrast colour for the\n",
    "# thing the reader must not miss, and nothing else. Defined here rather than imported so\n",
    "# the downloaded notebook runs on its own.\n",
    "INK, ACCENT, WARN, MUTED = \"#1f2430\", \"#2f6f6b\", \"#b4762a\", \"#9aa3b2\"\n",
    "mpl.rcParams.update(\n",
    "    {\n",
    "        \"figure.dpi\": 120,\n",
    "        \"savefig.dpi\": 120,\n",
    "        \"font.size\": 9.5,\n",
    "        \"axes.titlesize\": 11,\n",
    "        \"axes.titleweight\": \"semibold\",\n",
    "        \"axes.labelcolor\": INK,\n",
    "        \"axes.titlecolor\": INK,\n",
    "        \"text.color\": INK,\n",
    "        \"axes.edgecolor\": MUTED,\n",
    "        \"xtick.color\": MUTED,\n",
    "        \"ytick.color\": MUTED,\n",
    "        \"axes.grid\": True,\n",
    "        \"grid.color\": \"#e6e9ef\",\n",
    "        \"grid.linewidth\": 0.8,\n",
    "        \"axes.axisbelow\": True,\n",
    "    }\n",
    ")\n",
    "\n",
    "\n",
    "def finish(ax, title):\n",
    "    ax.set_title(title, loc=\"left\")\n",
    "    for side in (\"top\", \"right\"):\n",
    "        ax.spines[side].set_visible(False)\n",
    "    ax.figure.tight_layout()\n",
    "    return ax"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9c39eec2",
   "metadata": {},
   "source": [
    "### Where the complete-case cohort actually stops\n",
    "\n",
    "Each bar is one measured layer. The dashed line is the smallest of them, and it is the\n",
    "real ceiling on any analysis that needs every layer at once - usually far to the left\n",
    "of the cohort size the portal advertises."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "49d7f119",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-21T00:41:11.415237Z",
     "iopub.status.busy": "2026-09-21T00:41:11.415163Z",
     "iopub.status.idle": "2026-09-21T00:41:11.490382Z",
     "shell.execute_reply": "2026-09-21T00:41:11.490029Z"
    }
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "findfont: Failed to find font weight semibold for DejaVu Sans, now using 700.\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1056x626.4 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "ordered = target.sort_values(\"cases\")\n",
    "# One row per study, not per fraction: a cohort can carry the same analytical fraction\n",
    "# twice under different experiment types, so the bars sit on numeric positions and the\n",
    "# labels name both. Plotting against the fraction alone silently merges those rows.\n",
    "pos = list(range(len(ordered)))\n",
    "fig, ax = plt.subplots(figsize=(8.8, 0.46 * len(ordered) + 2.0))\n",
    "ax.barh(pos, ordered[\"cases\"], color=ACCENT, height=0.6)\n",
    "ax.set_yticks(pos)\n",
    "ax.set_yticklabels(\n",
    "    [f\"{f} ({e})\" for f, e in zip(ordered[\"fraction\"], ordered[\"experiment\"], strict=True)]\n",
    ")\n",
    "ax.axvline(n_min, color=WARN, lw=1.6, ls=\"--\")\n",
    "# The bound sits wherever the smallest layer falls. Once that is far to the right the\n",
    "# callout has no room left, so it flips to the inside of the line rather than running\n",
    "# off the edge and being silently clipped.\n",
    "flip = n_min > 0.7 * n_max * 1.18\n",
    "bound = f\"complete-case bound: {n_min} cases\"\n",
    "ax.text(n_min, len(ordered) - 0.35, f\"{bound} \" if flip else f\" {bound}\",\n",
    "        color=WARN, fontsize=8.5, va=\"center\", ha=\"right\" if flip else \"left\")\n",
    "for i, v in enumerate(ordered[\"cases\"]):\n",
    "    ax.text(v, i, f\" {int(v)}\", va=\"center\", fontsize=8.5, color=INK)\n",
    "ax.set_xlabel(\"cases with this layer\")\n",
    "ax.set_xlim(0, n_max * 1.18)\n",
    "ax.grid(axis=\"y\", visible=False)\n",
    "finish(ax, f\"{TARGET}: layer coverage is not uniform\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7b980ce3",
   "metadata": {},
   "source": [
    "## 4. How much reuse do these scarce datasets get?\n",
    "\n",
    "PDC study identifiers are almost never quoted in the literature, which means\n",
    "citation-based reuse tracing is close to blind here. We can demonstrate that directly."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "48345817",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-21T00:41:11.491325Z",
     "iopub.status.busy": "2026-09-21T00:41:11.491273Z",
     "iopub.status.idle": "2026-09-21T00:42:56.096342Z",
     "shell.execute_reply": "2026-09-21T00:42:56.095236Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Articles whose methods or results cite these PDC study accessions:\n",
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  PDC000622  Acetylome                    1 articles\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  PDC000616  Glycoproteome                1 articles\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  PDC000615  Phosphoproteome              1 articles\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  PDC000614  Proteome                     1 articles\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  PDC000621  Metabolome                   1 articles\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  PDC000617  Ubiquitylome                 1 articles\n",
      "\n",
      "Near-zero counts here do not mean the data are unused. They mean authors cite the\n",
      "marker paper rather than the accession, so citation-based reuse tracing cannot see\n",
      "proteomic reuse at all. That is a finding about the citation practice, not the data.\n"
     ]
    }
   ],
   "source": [
    "from urllib.parse import urlencode\n",
    "\n",
    "EPMC = \"https://www.ebi.ac.uk/europepmc/webservices/rest/search\"\n",
    "\n",
    "\n",
    "def epmc_hits(query: str) -> int:\n",
    "    url = f\"{EPMC}?{urlencode({'query': query, 'format': 'json', 'pageSize': 1})}\"\n",
    "    with urlopen(url, timeout=120) as r:  # noqa: S310 - fixed, trusted host\n",
    "        return int(json.loads(r.read().decode()).get(\"hitCount\") or 0)\n",
    "\n",
    "\n",
    "print(\"Articles whose methods or results cite these PDC study accessions:\\n\")\n",
    "checked = 0\n",
    "for _, row in target.iterrows():\n",
    "    sid = row[\"pdc_study_id\"]\n",
    "    n = epmc_hits(f'METHODS:\"{sid}\"')\n",
    "    print(f\"  {sid}  {row['fraction']:<28} {n} articles\")\n",
    "    checked += 1\n",
    "    if checked >= 6:\n",
    "        break\n",
    "\n",
    "print(\n",
    "    \"\\nNear-zero counts here do not mean the data are unused. They mean authors cite the\\n\"\n",
    "    \"marker paper rather than the accession, so citation-based reuse tracing cannot see\\n\"\n",
    "    \"proteomic reuse at all. That is a finding about the citation practice, not the data.\"\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "160463b2",
   "metadata": {},
   "source": [
    "## What to do with this\n",
    "\n",
    "- The cohort identified above is the most deeply measured in the NCI portfolio, and all\n",
    "  of it downloads without an account.\n",
    "- **Retrieve clinical data separately.** PDC ships no outcome, treatment or demographic\n",
    "  variables. For CPTAC cohorts these live in the Genomic Data Commons and must be joined\n",
    "  on case identifier - the step where most CPTAC reuse stalls.\n",
    "- **Check the layer intersection before designing**, using the numbers printed above."
   ]
  }
 ],
 "metadata": {
  "cds": {
   "built_at": "2026-09-21T00:41:08.476613+00:00",
   "source": "workbooks/python/04_scarce_modality_cptac.py"
  },
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
