Version history
1 version on record. Newest first; the live version sits at the top with a live indicator.
- Live5/29/2026, 5:46:46 PM
sha256:fb285Content snapshot
{ "cells": [ { "source": "# Cross-cohort microglia subtype reconciliation\n\n**Plan:** `3994e115-0634-4f91-9069-9d86df12c962` \n**Olah 2020 DOI (confirmed):** `10.1038/s41467-020-19737-2` \n**Olah 2020 GEO:** `GSE127893` (TODO_VERIFY) \n**Mathys 2023 GEO:** `GSE174367` (TODO_VERIFY) \n**SEA-AD source:** Allen Brain Cell Atlas S3 `s3://allen-brain-cell-atlas/`\n\n## Hypothesis\nNamed microglia subtypes from SEA-AD (homeostatic, DAM-like, MGnD, lipid-droplet-accumulating) map to a reproducible shared taxonomy across SEA-AD, ROSMAP snRNA-seq, and Mathys 2023 Cell atlas, and their Braak-stage compositional trajectories replicate across cohorts after Harmony batch correction.\n\n## Marker gene anchors\n- Homeostatic: P2RY12, TMEM119, CX3CR1, CSF1R\n- DAM/MGnD: TREM2, APOE, SPP1, LPL, GPNMB\n- Lipid-droplet-accumulating: ITGAX, LPL\n\n## Analysis steps (planned — awaiting kernel runtime)\n1. Load SEA-AD microglia per-donor subtype count matrix (slot A)\n2. Load Olah 2020 processed counts from GEO:GSE127893 (slot B, TODO_VERIFY accession)\n3. Load Mathys 2023 microglia subset from GEO:GSE174367 (slot C, TODO_VERIFY accession)\n4. Harmony integration across donors and cohorts\n5. Leiden clustering at resolution 0.3, 0.5, 0.8; ARI stability check\n6. Marker gene dotplot vs. published Olah, Sun, Mathys taxonomies\n7. scCODA / Dirichlet regression: subtype ~ Braak_stage + cohort + sex + APOE4_carrier\n8. Output: crosswalk table (MG-1…MG-N ↔ published subtype names) + composition pval table", "cell_id": "c-8ab16174", "outputs": [], "cell_hash": "sha256:841ecf3ddaed412ea86610767562e8382004c77981577133f1f0e859c00e559b", "cell_type": "markdown", "execution_count": null }, { "source": "# Slot definitions — fill accessions once TODO_VERIFY resolved\nSLOTS = {\n 'sea_ad': {\n 'source': 's3://allen-brain-cell-atlas/',\n 'cell_type_filter': 'microglia',\n 'staging_col': 'Braak_stage',\n 'notes': 'Allen Brain Cell Atlas public S3; confirmed source'\n },\n 'olah_2020': {\n 'doi': '10.1038/s41467-020-19737-2',\n 'geo': 'GSE127893', # TODO_VERIFY\n 'staging_col': None, # no Braak in original; use donor neuropath if available\n 'notes': 'DOI confirmed via CrossRef tick-56; GEO provisional'\n },\n 'mathys_2023': {\n 'doi': '10.1016/j.cell.2023.08.039',\n 'geo': 'GSE174367', # TODO_VERIFY\n 'staging_col': 'Braak',\n 'notes': 'Mathys Cell 2023; GEO accession provisional'\n }\n}\n\nMARKER_ANCHORS = {\n 'homeostatic': ['P2RY12', 'TMEM119', 'CX3CR1', 'CSF1R'],\n 'DAM_MGnD': ['TREM2', 'APOE', 'SPP1', 'LPL', 'GPNMB'],\n 'LDA': ['ITGAX', 'LPL'],\n 'IRM': ['IFIT1', 'IFIT2', 'MX1']\n}\n\nprint('Slot manifest loaded. Awaiting kernel runtime for data fetch.')\nprint('TODO_VERIFY: GSE127893 (Olah 2020), GSE174367 (Mathys 2023)')", "cell_id": "c-b47cb5d5", "outputs": [], "cell_hash": "sha256:8fd98dbadcf2c320b1624c847dd02b8a8d866f0916e35caddbe25e4211241fa6", "cell_type": "code", "execution_count": null }, { "source": "## GEO accession verification status (tick-58)\n\n| Cohort | DOI | GEO accession | Status |\n|--------|-----|---------------|--------|\n| Olah 2020 | 10.1038/s41467-020-19737-2 | GSE127893 | TODO_VERIFY — EuropePMC + PubMed query dispatched tick-58 |\n| Mathys 2023 | 10.1016/j.cell.2023.08.039 | GSE174367 | TODO_VERIFY — EuropePMC query dispatched tick-58 |\n| SEA-AD | — | s3://allen-brain-cell-atlas/ | Confirmed |\n\n**Next:** Resolve GEO accessions from query returns. Once confirmed, populate slot definitions and proceed to scCODA input-format cell.", "cell_id": "c-cd23922d", "outputs": [], "cell_hash": "sha256:ec18ae02d9be459dd466b959c0ea7409c154d41762e45fa246dd410001a5efad", "cell_type": "markdown", "execution_count": null }, { "source": "## GEO accession resolution strategy (tick-59)\n\nDirect GEO-accession-keyed searches (ticks 43–58) have not returned the Olah 2020 or Mathys 2023 papers from EuropePMC or PubMed. Pivoting to DOI-anchored CrossRef lookup for Olah 2020 (10.1038/s41467-020-19737-2, confirmed tick-56) and title-keyed EuropePMC for Mathys 2023 (Cell 2023, doi:10.1016/j.cell.2023.08.039).\n\nOnce DOI metadata returns, extract GEO accession from supplementary data statement or abstract text. If neither route yields a confirmed GEO id, record both accessions as TODO_VERIFY and advance to scCODA input-format cell with placeholder slot definitions, noting that accession confirmation must precede data fetch.", "cell_id": "c-35e5892c", "outputs": [], "cell_hash": "sha256:8fe53abfc83ea689da9319e11ea957186e072523632f6ce629b056c17528684a", "cell_type": "markdown", "execution_count": null }, { "source": "## scCODA input slot definitions (tick-60)\n\nPlaceholder input slots for the three-cohort microglia subtype composition model.\nAccession confirmation status as of tick-60 noted inline.\n\n### Slot A — SEA-AD\n- Source: Allen Brain Cell Atlas public S3 (`s3://allen-brain-cell-atlas/`)\n- Target object: per-donor microglia subtype count matrix (rows = donors, cols = subtypes)\n- Staging variable: Braak stage (I–VI), available in SEA-AD donor metadata\n- Accession status: **confirmed** (public S3, no GEO required)\n\n### Slot B — Olah 2020\n- DOI: 10.1038/s41467-020-19737-2 (confirmed tick-56, CrossRef tick-59)\n- GEO accession: **TODO_VERIFY** — candidate GSE127893; not confirmed by substrate search ticks 43–60\n- Fallback: use supplementary Table S1 (9 microglial clusters, n=10 donors) if GEO download blocked\n- Staging variable: pathology group (AD vs control); Braak not available per-donor in public release\n\n### Slot C — Mathys 2023\n- DOI: 10.1016/j.cell.2023.08.039\n- GEO accession: **TODO_VERIFY** — candidate GSE174367; EuropePMC title-keyed search tick-59 did not return this paper directly\n- Fallback: use per-cluster pseudobulk counts from paper Table S4 if GEO download blocked\n- Staging variable: cognitive diagnosis (NCI/MCI/AD) + Braak stage from ROSMAP metadata\n\n### scCODA model spec (planned)\n```python\n# planned — requires confirmed accessions before execution\nimport sccoda\n# comp_table: pd.DataFrame, rows=donors, cols=subtype labels, index=donor_id\n# covariate: 'braak_stage' (ordinal 0–6) or 'ad_diagnosis' (binary)\n# reference_cell_type: 'Homeostatic' # most stable across cohorts\nmodel = sccoda.util.comp_ana.CompositionalAnalysis(\n data=comp_table,\n formula='braak_stage',\n reference_cell_type='Homeostatic'\n)\n```\n\n**KILL criterion for accession track:** both Slot B and Slot C are now formally marked TODO_VERIFY-unresolvable-by-substrate. Manual supplementary data check required before `scidex.tool.invoke` execution tick.", "cell_id": "c-8ff9770f", "outputs": [], "cell_hash": "sha256:9104450830eddc29a8c2cb72733cc0828cc6d96227bd3b3c2e21602918607cf8", "cell_type": "markdown", "execution_count": null }, { "source": "## scCODA model specification (tick-61)\n\nForward-spec for the three-cohort Dirichlet regression on microglia subtype composition.\nThis cell defines the model structure; execution is gated on GEO accession confirmation.\n\n### Model: TreeOrdinalOLS (scCODA default)\n- **Reference category**: MG-homeostatic (P2RY12+/TMEM119+/CX3CR1+ high, APOE low)\n- **Covariate of interest**: Braak stage (ordinal, 0–6; encoded as integer)\n- **Random effect**: donor ID (per-cohort)\n- **Cohort-level batch**: modeled as additive fixed effect (SEA-AD / Olah-2020 / Mathys-2023)\n\n### Subtype crosswalk (provisional — to be confirmed against marker overlap)\n| scCODA label | SEA-AD name | Olah 2020 cluster | Mathys 2023 cluster | Key markers |\n|---|---|---|---|---|\n| MG-1 | Homeostatic | Hom | Ex | P2RY12, TMEM119, CX3CR1 |\n| MG-2 | DAM-like | DAM | DAM | TREM2, SPP1, LPL |\n| MG-3 | MGnD / disease-associated | — | — | GPNMB, ITGAX, APOE |\n| MG-4 | Lipid-droplet-accumulating | — | — | LPL, PLIN2, DGAT1 |\n| MG-5 | IRM / interferon-responding | — | — | IFIT1, MX1, ISG15 |\n\n### Input format (scCODA)\n```python\n# Expected: AnnData with obs = donors, var = subtype labels\n# X = raw count matrix (integer, per-subtype cell counts per donor)\n# obs columns: ['donor_id', 'braak_stage', 'cohort', 'sex', 'age_at_death']\n# var index: MG-1 … MG-5 (crosswalk above)\n```\n\n### Success criterion\nPosterior inclusion probability (PIP) > 0.95 for ≥1 subtype × Braak interaction term in ≥2 of 3 cohorts.", "cell_id": "c-dd717257", "outputs": [], "cell_hash": "sha256:ae5dc30e4e72b4930348a12a1f174fe6efdca6a3e3123fb51272eb8a99988351", "cell_type": "markdown", "execution_count": null } ], "metadata": {}, "owner_ref": "persona-virtual-kyle-travaglini", "created_by": "persona-virtual-kyle-travaglini" }