信息速览
TCGA-SARC 是 TCGA 计划里的成人软组织肉瘤项目,2017 年 11 月在 Cell 发表主论文,2018 年随泛癌图谱重新处理。它把二百六十一例患者的肿瘤标本拆成 DNA、RNA、蛋白与组织四条线,分别跑全外显子、全基因组、转录组、miRNA、甲基化、拷贝数阵列、反相蛋白阵列与 H&E 扫描。
它和乳腺癌、肺癌那类项目的根本差别不在数据量,而在「对象是什么」。癌是一个器官加一种上皮来源,肉瘤是一族间叶来源的肿瘤,按世界卫生组织分类有五十余种组织学亚型,各自的驱动事件、好发部位与治疗路径都不同。这个项目只把其中六类做成组分析,这是它最硬的边界。
下面按「它解决什么麻烦、里面有什么、怎么取、边界在哪」四段展开,规模数字以 GDC 项目端点为准,生物学结论取自 2017 年 Cell 主论文摘要,口径与核验日期集中写在附录。一屏速览见下表。
| 维度 | 内容 |
|---|---|
| 全称 | The Cancer Genome Atlas Sarcoma |
| 项目编号 | TCGA-SARC(GDC project_id) |
| 发起机构 | 美国国家癌症研究所(NCI)与国家人类基因组研究所(NHGRI) |
| 主论文 | Cell 2017,206 例成人软组织肉瘤、六类主要亚型 |
| 病例规模 | 二百六十一例(GDC 项目页) |
| 文件规模 | 16,404 份,合计约 143 TB |
| 数据类别 | 10 类:简单核苷酸变异、测序读段、生物样本、临床、拷贝数、转录组、甲基化、蛋白组、体细胞结构变异、结构变异 |
| 实验策略 | 9 种:WXS、WGS、RNA-seq、miRNA-seq、甲基化阵列、SNP 阵列、RPPA、诊断切片、组织切片 |
| 亚型结构 | 6 个疾病大类,三十三种原发诊断字符串 |
| 组学层 | 突变、拷贝数、表达、miRNA、甲基化、蛋白、结构变异共七层 |
| 病理切片 | 诊断切片 254 例、组织切片 261 例,存 GDC |
| 影像 | 无独立影像集合;第三方挂载 CT 4 例、MR 2 例 |
| 主键 | 患者 barcode(TCGA-XX-XXXX) |
| 访问层级 | 开放层免注册;受控层经 dbGaP phs000178 |
| 衍生入口 | cBioPortal 泛癌图谱版,255 个样本、hg19 |
§1 它要解决的具体麻烦
1.1 一句话结论:它解决的是「罕见亚型凑不出队列」的问题
做单一亚型的研究者长期缺样本。平滑肌肉瘤不算罕见,但去分化脂肪肉瘤、恶性外周神经鞘瘤、滑膜肉瘤单独拿出来,任何一家中心十年也攒不到一百例可用于多平台测量的新鲜标本。TCGA 的做法是把几个亚型捆成一个「肉瘤」方案,用统一流程跑同一套平台,让每个亚型都能拿到几十例量级的配对数据。
这个设计决定了它的强项与短板。强项是六个主要亚型都有突变、拷贝数、表达、甲基化与蛋白五个层,且来自同一套管线,可以直接横向比较;短板是亚型之间的例数极不均衡,最大的一组过百例,最小的一组只有个位数,而且这个「捆」的动作本身会把不同生物学实体的数据混进同一个文件里。
| 你想问的问题 | 需要什么 | 够不够 |
|---|---|---|
| 某亚型的拷贝数驱动格局 | 同亚型内多例配对的多平台数据 | 够,主要亚型都有几十例 |
| 亚型之间的分子差异 | 统一管线、统一平台 | 够,这正是该项目的设计目标 |
| 罕见亚型的独立建模 | 单亚型百例以上 | 不够,多数亚型只有个位数到几十例 |
| 肉瘤整体的泛化规律 | 覆盖五十余亚型的抽样 | 不够,只覆盖六类 |
1.2 三条常见的错误期待
第一条,把它当成「软组织肉瘤全集」。世界卫生组织的软组织肿瘤分类有五十余种亚型,这个项目成组分析的只有六类,另有若干零散诊断名。用它估计某种罕见亚型的分子特征,等于用几例样本代表一个病种。
第二条,把它当成「带影像的多模态数据集」。它没有配套的影像集合,第三方平台挂载的放射影像只有个位数病例。所有「影像配分子」的设想在这里都落不了地,能配的只有病理切片。
第三条,把它当成一张干净的分亚型表。GDC 的原发诊断字段是自由文本式的病理报告转录,同一亚型会有多种写法,还混进了癌、淋巴瘤、黑色素瘤等非肉瘤诊断。任何直接按诊断字段分组统计的流程,第一步就会把队列切错。
| 常见期待 | 实际情况 | 后果 |
|---|---|---|
| 「覆盖全部肉瘤亚型」 | 成组分析仅六类,另有三十二种零散诊断名 | 亚型层面的结论外推过头 |
| 「二百六十一例都能进分析」 | 论文口径为二百零六例,其余诊断或数据不全 | 队列规模被高估 |
| 「有配套 CT 或 MRI」 | 无独立影像集合,第三方挂载个位数 | 影像组学方案直接作废 |
| 「六个大类等于六个亚型」 | 大类下还有细分,如脂肪肉瘤分三种分化程度 | 分组粒度过粗,稀释信号 |
| 「蛋白层覆盖与突变层相当」 | RPPA 覆盖二百二十三例,比突变层少三十余例 | 多组学交集被最薄一层限制 |
| 「随访能做复发分析」 | 以生命状态与天数为主,缺复发日期 | 无病生存只能用派生终点近似 |
1.3 它能给到的与给不到的
| 你的需求 | 它给的 | 够不够 |
|---|---|---|
| 主要亚型的拷贝数图谱 | 六个大类、SNP 阵列近全覆盖 | 够,且是该项目最扎实的一层 |
| 亚型内的分子亚群 | 表达、甲基化与蛋白的联合聚类 | 够做假设生成,亚群标签需自行复算 |
| 病理切片配分子标签 | 诊断切片二百五十四例,与分子同源 | 够做弱监督与多实例学习 |
| 生存分析 | 生命状态、随访天数、泛癌统一终点 | 够做单因素,事件数按亚型分层后偏少 |
| 罕见亚型的独立结论 | 多为个位数例 | 不够,只能作为合并分析的成分 |
| 治疗前后对比 | 仅有治疗字段,无统一前后配对 | 不够 |
| 放射影像 | 无 | 不够,需换数据集 |
| 复发与转移的影像确认 | 无 | 不够 |
1.4 你的处境与它能帮到的事
| 你的处境 | 它能帮你什么 | 下一步该做什么 |
|---|---|---|
| 手上有一批肉瘤切片,缺分子标签 | 提供同源突变、表达、甲基化与蛋白 | 先按诊断字段把队列切到可比亚型 |
| 想做亚型间的拷贝数比较 | 六个大类同一管线、同一参考基因组 | 用 GISTIC 的基因级调用做横向对照 |
| 想找某个亚型的预后分子亚群 | 表达与甲基化的联合矩阵 | 复算聚类,再用生存终点验证 |
| 写肉瘤分子综述,需要标准参照 | 2017 年 Cell 主论文是领域通用引用 | 引论文同时引 GDC 项目号 |
| 教学,需要一套跨亚型的多组学案例 | 一位患者可串起七层测量 | 选一个数据完整的病例做贯穿演示 |
| 做影像组学 | 无配对影像 | 改用专门的多模态肉瘤队列 |
1.5 一句话判断
它把「罕见亚型凑不出队列」这件事做出了一个可行解,代价是把五十余种亚型压成六类,再用一个「肉瘤」的总名把它们盖住。
1.6 不适合谁:四条边界
| 边界 | 具体表现 | 更适合的替代 |
|---|---|---|
| 追求亚型全覆盖 | 成组六类,其余零散 | 按亚型检索专门的单病种队列 |
| 追求影像配对 | 无独立影像集合 | 带影像的多模态肉瘤研究队列 |
| 追求罕见亚型统计功效 | 部分亚型个位数例 | 国际协作组的多中心注册研究 |
| 追求治疗反应标签 | 无统一疗效判定与前后配对 | 新辅助治疗专项试验队列 |
§2 数据构成与规格
2.1 三层树:患者、样本、文件
GDC 的组织方式是三层树。最上层是 case,即一位患者,标识为十二位 barcode。第二层是 sample,对应手术切下来的某一块组织,标识里带样本类型码。第三层是 aliquot 与分析文件,一份文件对应一次测量。临床与生物样本表以 TSV 形式按项目打包,按 case 聚合后成为一行。
与乳腺癌项目不同,这里没有第二棵树。TCGA 的放射影像通常另存于影像归档并以患者 barcode 与组学相接,SARC 没有对应的影像集合,因此所有连接都发生在同一套 barcode 之内,不存在跨门户对齐的问题,也不存在影像日期与病理日期换算的问题。
| 层级 | 内容 | 标识粒度 | 备注 |
|---|---|---|---|
| 患者 | case | 十二位 barcode | 顶层单位,临床表按此行聚合 |
| 样本 | sample | 十六位 | 样本类型码决定原发、转移或正常 |
| 等分样 | aliquot | 更长的后缀 | 一份核酸或一份裂解液 |
| 文件 | 分析文件 | UUID | 一次测量的产物 |
| 临床 | 病例表、随访表、治疗表 | 患者级 | 长表,需聚合 |
2.2 字段与记录的字典
临床侧的核心字段可分六组:身份、诊断、部位、分期、治疗、结局。肉瘤的字段结构比癌种简单,因为它的分期体系本身在样本采集年代经历过修订,部分病例的 AJCC 分期字段存在空值。
| 字段组 | 代表字段 | 类型 | 说明 |
|---|---|---|---|
| 身份 | case_submitter_id | 字符串 | 十二位患者 barcode,主键 |
| 诊断 | primary_diagnosis | 字符串 | 自由文本式的病理诊断,需归一 |
| 诊断 | morphology | 编码 | ICD-O-3 形态学编码 |
| 部位 | primary_site | 枚举 | 结缔组织、腹膜后、子宫、胃肠等 |
| 分期 | ajcc_pathologic_stage | 枚举 | 肉瘤分期按部位与分级体系不同 |
| 分级 | tumor_grade | 枚举 | 软组织肿瘤的 FNCLCC 或两級制 |
| 治疗 | 治疗类型与起止天数 | 长表 | 按 case 聚合后为多列 |
| 结局 | vital_status | 枚举 | Alive / Dead |
| 结局 | days_to_death | 整数 | 仅死亡患者有值 |
| 随访 | days_to_last_follow_up | 整数 | 存活患者的末次接触 |
| 字段 | 空值形态 | 处理建议 |
|---|---|---|
| primary_diagnosis | 出现 not reported | 单独一类,不并入任何亚型 |
| tumor_grade | 部分病例缺分级 | 不进入主模型或单独一类 |
| 分期 | 体系不统一 | 按部位分组后再看 |
| days_to_death | 存活者为空 | 与生命状态联合判断 |
| 治疗字段 | 整段未采集 | 不进入主模型 |
样本与文件侧的字段决定能不能批量取数。文件端点返回的每条记录都带 data_category、data_type、experimental_strategy、access 四个属性,其中 access 决定这份文件在开放层还是受控层。
| 字段 | 取值示例 | 用途 |
|---|---|---|
| sample_submitter_id | TCGA-XX-XXXX-01A | 样本级标识 |
| sample_type | Primary Tumor | 区分肿瘤与正常 |
| preservation_method | FFPE / Snap Frozen | 影响核酸质量 |
| file_id | UUID 字符串 | 下载与去重的主键 |
| data_category | Copy Number Variation | 粗粒度分类 |
| data_type | Gene Level Copy Number | 细粒度类型 |
| experimental_strategy | Genotyping Array | 实验方法 |
| access | open / controlled | 决定是否需要 dbGaP |
2.3 一条记录的解剖
把一位患者摊开,可以看到标识体系如何逐级收窄。患者级十二位,样本级十六位,等分样与分析文件再加后缀。跨层分析真正通用的是前十二位。
TCGA-XX-XXXX-01A-01R-A00B-01
│ │ │ │ │ │ │ │
│ │ │ │ │ │ │ └─ 中心代码(测序或分析中心)
│ │ │ │ │ │ └────── 板号
│ │ │ │ │ └──────── 分析物类型(R 表示 RNA,D 表示 DNA)
│ │ │ │ └────────── 部分与孔位
│ │ │ └──────────── 样本类型(01A 原发肿瘤,A 为顺序)
│ │ └───────────────── 患者序号
│ └──────────────────── 组织来源站点
└───────────────────────── 项目前缀
这段标识里,真正跨层通用的是前十二位。样本类型码在肉瘤里尤其重要,因为软组织肿瘤的「正常对照」不是癌旁组织,而是血液或未受累的筋膜、脂肪,很多病例根本没有配对正常样本,做体细胞调用时只能依赖血液的胚系对照。
| 标识段 | 含义 | 是否跨层通用 |
|---|---|---|
| TCGA | 项目前缀,固定 | 是 |
| TSS | 组织来源站点 | 是 |
| Participant | 患者序号 | 是 |
| Sample | 样本类型与顺序 | 否,仅组学与病理 |
| Vial/Portion | 份数与孔位 | 否 |
| Analyte | 分析物类型 | 否 |
| Plate 与 Center | 板号与中心 | 否 |
| 对齐目标 | 应使用的粒度 | 不能做的事 |
|---|---|---|
| 突变与表达 | 样本级 | 把不同 aliquot 混成一个测量 |
| 切片与分子 | 样本级先对齐,再看蜡块 | 假设切片与核酸来自同一块组织 |
| 临床与全部 | 患者级 | 把随访多行直接并进主表 |
| 亚型分组 | 患者级,按归一后的诊断 | 直接用原始诊断字符串分组 |
2.4 数据类别与实验策略
十个数据类别里,简单核苷酸变异与拷贝数占文件数的大头,转录组与甲基化的文件数中等但单文件信息密度高,蛋白组只有二百余例,是覆盖最薄的一层。
| 数据类别 | 文件数 | 覆盖病例 | 说明 |
|---|---|---|---|
| Simple Nucleotide Variation | 5,115 | 全队列 | 体细胞突变调用 |
| Copy Number Variation | 3,332 | 全队列 | 基因级与片段级拷贝数 |
| Sequencing Reads | 2,090 | 全队列 | 比对后的读段文件 |
| Biospecimen | 1,422 | 全队列 | 样本与标本元数据 |
| Structural Variation | 1,171 | 260 | 结构变异调用 |
| Transcriptome Profiling | 1,056 | 全队列 | 表达定量 |
| DNA Methylation | 807 | 全队列 | 探针级 beta 值 |
| Somatic Structural Variation | 609 | 215 | 体细胞结构变异 |
| Clinical | 576 | 全队列 | 病例、随访、治疗表 |
| Proteome Profiling | 226 | 二百二十三 | RPPA 蛋白丰度 |
实验策略的覆盖更能说明「同一患者被几种尺子量过」。SNP 阵列、甲基化阵列与组织切片接近全覆盖,RNA-seq 与 miRNA-seq 覆盖九成以上,WXS 略低,WGS 与 RPPA 都在八成上下。
| 实验策略 | 文件数 | 覆盖病例 | 主要产物 |
|---|---|---|---|
| WXS | 4,101 | 二百五十五 | 外显子突变 |
| Genotyping Array | 3,364 | 全队列 | 拷贝数与杂合性缺失 |
| WGS | 2,734 | 二百二十三 | 全基因组变异与结构变异 |
| RNA-Seq | 2,385 | 二百五十九 | 表达定量 |
| miRNA-Seq | 789 | 二百五十九 | 小 RNA 表达 |
| Methylation Array | 807 | 全队列 | 甲基化 beta 值 |
| Diagnostic Slide | 600 | 二百五十四 | 诊断切片扫描 |
| Tissue Slide | 290 | 全队列 | 组织切片扫描 |
| Reverse Phase Protein Array | 226 | 二百二十三 | 蛋白丰度 |
2.5 与同类资源的字段差异
同样是肉瘤多组学,cBioPortal 的泛癌图谱版是二次处理的产物:样本数二百五十五,按 hg19 坐标提供,蛋白层二百一十八例,另附一百一十五条治疗记录。GDC 是原始门户,按 GRCh38 提供,覆盖全部入库病例。两者的差异不是谁更全,而是口径不同。
| 维度 | GDC 原始项目 | cBioPortal 泛癌版 | 差异的实际影响 |
|---|---|---|---|
| 病例口径 | 二百六十一例 | 二百五十五个样本 | 少量病例在二次处理中被剔除 |
| 参考基因组 | GRCh38 | hg19 | 坐标不能直接互换 |
| 蛋白层 | 二百二十三例 | 二百一十八例 | 交集口径不同 |
| 治疗记录 | 长表字段 | 115 条结构化记录 | 二次处理已做过归一 |
| 影像挂载 | 无 | CT 4 例、MR 2 例 | 仅第三方平台有零星影像 |
| 用途 | 从原始文件起算 | 直接做可视化与快速统计 | 结论要回到 GDC 复核 |
§3 核心层 A:项目身份与「肉瘤不是一种病」
3.1 三层坐标:计划、泛癌图谱、单癌种
TCGA 是一个计划,泛癌图谱是一次跨癌种的整合,SARC 是其中一个项目。三层各有各的计数,混用会得出矛盾的数字。计划层面是三十三个癌种、上万患者;泛癌图谱层面把各癌种重新处理成统一口径;项目层面才是二百六十一例肉瘤。
| 层级 | 对象 | 规模口径 | 回答的问题 |
|---|---|---|---|
| 计划 | TCGA | 三十三个癌种 | 癌症的分子共性 |
| 整合 | PanCanAtlas | 统一管线重算 | 跨癌种的通路与免疫格局 |
| 项目 | TCGA-SARC | 二百六十一例 | 肉瘤各亚型被测量到什么程度 |
| 亚群 | 六个疾病大类 | 从个位数到过百例 | 单亚型的分子特征 |
泛癌图谱对肉瘤的意义有两面。好的一面是它让肉瘤的表达、甲基化与拷贝数可以和其他癌种放在同一个坐标系里比较,主论文第三条结论讲的「免疫微环境与预后相关」,正是靠泛癌层面的统一处理才成立。不好的一面是它会抹掉亚型标签,泛癌版的样本表只保留「肉瘤」这一层身份,要做亚型分析必须回到 GDC 的诊断字段。
3.2 与泛癌总库的明确分工
库内已有 TCGA 泛癌总库词条,它把三十三个癌种放在一个入口下,重点在跨癌种比较与通用取数方法。本篇只做一件事:把肉瘤这一个项目的亚型结构、组学层与取数路径讲到能直接开工。
分工可以用三句话记住。泛癌总库回答「肉瘤在三十三个癌种里处于什么位置」,本篇回答「肉瘤这一个项目里六个亚群各自长什么样」。泛癌总库的典型表格是癌种乘模态的覆盖矩阵,本篇的典型表格是亚型乘组学层的覆盖与取数路径。泛癌总库的使用者要跨癌种迁移,本篇的使用者要在亚型之间做对照。
| 关注点 | 泛癌总库 | 本篇 |
|---|---|---|
| 分析单位 | 癌种 | 亚型与患者 |
| 核心表格 | 癌种乘模态覆盖 | 亚型乘组学层覆盖 |
| 亚型处理 | 合并为「肉瘤」一项 | 拆到六个大类与诊断字符串 |
| 临床处理 | 统一到泛癌终点 | 字段组、空值形态、分级缺失 |
| 取数代码 | 通用查询 | SARC 专用过滤与诊断归一 |
3.3 肉瘤为什么不能当作一种病
软组织肉瘤起源于间叶组织,按世界卫生组织的分类有五十余种组织学亚型。它们的差别不是组织学上的细节,而是驱动事件、好发年龄、原发部位与治疗路径的系统性差异:滑膜肉瘤由特征性的染色体易位驱动,突变负荷极低;去分化脂肪肉瘤的核心事件是特定染色体区段的扩增;平滑肌肉瘤以 TP53 与 RB1 通路失活为主;恶性外周神经鞘瘤常出现在神经纤维瘤病一型的背景下。
这种异质性直接决定了两件事。第一,亚型内部的样本量永远不够,把六个亚型捆在一起才有统计功效。第二,捆在一起之后,任何跨亚型的汇总统计都会被最大的一组主导,而最大的一组往往占了四成以上。主论文的第一条结论之所以强调「除滑膜肉瘤外以拷贝数改变为主、突变负荷低」,正是把亚型差异作为前提说出来的。
| 亚型 | 主导分子事件 | 对分析的含义 |
|---|---|---|
| 平滑肌肉瘤 | TP53、RB1 通路失活,拷贝数不稳定 | 例数最多,容易主导合并统计 |
| 去分化脂肪肉瘤 | 特定区段扩增驱动 | 拷贝数层信息量高于突变层 |
| 未分化多形性肉瘤 | 高拷贝数负荷、复杂核型 | 诊断本身依赖排除法 |
| 黏液纤维肉瘤 | 拷贝数改变为主,谱系与未分化多形性重叠 | 与相邻亚型的边界存在争议 |
| 恶性外周神经鞘瘤 | 常见于神经纤维瘤病一型背景 | 胚系背景需单独标注 |
| 滑膜肉瘤 | 特征性易位,突变负荷最低 | 与其他亚型的机制不同源 |
3.4 纳入边界与队列构成
GDC 的三十三种原发诊断字符串,是这个项目最该被如实交代的部分。六个疾病大类之下,实际诊断名远多于六:平滑肌肉瘤、去分化脂肪肉瘤、未分化肉瘤、纤维黏液肉瘤、恶性纤维组织细胞瘤、恶性外周神经鞘瘤、滑膜肉瘤的三种形态、高分化与多形性脂肪肉瘤、黏液样平滑肌肉瘤、侵袭性纤维瘤病等。
同时,队列里还混进了不属于肉瘤的诊断:若干例基底细胞癌、鳞状细胞癌、腺癌、非霍奇金淋巴瘤、霍奇金淋巴瘤、黑色素瘤、脑膜瘤、肾细胞癌、卵泡膜细胞瘤,以及十七例诊断未报告。这些记录各为个位数,来自送检单位的病理报告转录,在 GDC 里与肉瘤病例同表。
| 类别 | 具体项目 | 对队列的影响 |
|---|---|---|
| 纳入 | 六个主要亚型 | 构成本项目的主体 |
| 纳入 | 少见亚型与交界性病变 | 例数少,单独分析无功效 |
| 混入 | 癌、淋巴瘤、黑色素瘤、脑膜瘤 | 需按诊断字段剔除 |
| 缺失 | 十七例诊断未报告 | 无法归组,只能单列 |
3.5 时间线与版本
项目的时间线有三条:样本采集、数据生成、数据发布版本。采集与测序发生在主论文之前,2017 年论文发表,2018 年随泛癌图谱重新处理,此后 GDC 仍在做 harmonized 重处理,同一份文件在不同年份下载,UUID 可能不同。
| 时间 | 事件 | 对使用者的意义 |
|---|---|---|
| 2017-11 | Cell 主论文发表 | 六类亚型的分子框架确立 |
| 2018-04 | 泛癌图谱版本发布 | 表达与甲基化按统一管线重算 |
| 2018 之后 | GDC 持续重处理 | 需记录下载时的数据版本 |
| 2026 | 本次核验 | 数字取自 GDC 项目端点 |
3.6 许可与使用边界
许可分两层。开放层遵循 TCGA 数据使用协议,要求致谢 TCGA Research Network,不得尝试重新识别个体;受控层的原始读段与胚系变异走 dbGaP phs000178,有单独的数据使用协议与禁售条款。项目级元数据里的 dbGaP accession 字段为空,受控入口要按 TCGA 总库的平台号去申请。
| 数据层 | 许可 | 关键义务 | 常见误用 |
|---|---|---|---|
| GDC 开放层 | TCGA 数据使用协议 | 致谢 TCGA,不重新识别 | 当作无限制公有领域 |
| GDC 受控层 | dbGaP DUC | 限定研究用途,按期报告 | 转发给未授权合作者 |
| 病理切片 | 同开放层 | 引用来源与版本 | 二次分发未标注出处 |
| 衍生结果 | 依原许可 | 标明来源与版本 | 宣称对原始数据拥有新版权 |
3.7 标识体系与命名习惯
文献里对这个项目有五、六种写法,检索时会漏。GDC 用 TCGA-SARC,cBioPortal 用 sarc_tcga_pan_can_atlas_2018,论文里常写 SARC 或 TCGA sarcoma,旧数据包用 SARC 作为队列缩写。做系统集成时,以 project_id 为主键,其余写法做别名表。
| 写法 | 出现场景 | 是否等价 |
|---|---|---|
| TCGA-SARC | GDC、API | 是,标准写法 |
| SARC | 论文、旧数据包 | 是,需上下文确认 |
| TCGA sarcoma | 综述、新闻 | 是,口语化 |
| Sarcoma(项目名) | GDC 项目 name 字段 | 是,正式名 |
| sarc_tcga_pan_can_atlas_2018 | cBioPortal | 否,是二次处理版本 |
§4 核心层 B:六个大类与七层组学
4.1 亚型结构与例数落差
六个疾病大类在 GDC 里的名字是脂肪性肿瘤、纤维性肿瘤、滑膜样肿瘤、肌性肿瘤、神经鞘肿瘤、软组织肿瘤与肉瘤未特指。这个名字体系本身就有信息量:它不是病理学的亚型清单,而是按分化方向归的粗类,一个大类里往往并着若干个预后完全不同的亚型。
| 疾病大类 | 包含的典型亚型 | 例数特征 |
|---|---|---|
| 肌性肿瘤 | 平滑肌肉瘤、黏液样平滑肌肉瘤 | 最大的一组,过百例 |
| 脂肪性肿瘤 | 去分化、高分化、多形性脂肪肉瘤 | 第二组,几十例 |
| 未特指类 | 未分化肉瘤、未分化多形性肉瘤 | 中等,数十例 |
| 纤维性肿瘤 | 纤维黏液肉瘤、恶性纤维组织细胞瘤、纤维瘤病 | 中等偏小 |
| 神经鞘肿瘤 | 恶性外周神经鞘瘤、神经鞘瘤 | 个位数到十余例 |
| 滑膜样肿瘤 | 滑膜肉瘤的单相、双相与未特指 | 个位数 |
例数落差是使用这个项目时最需要提前知道的事实。最大的一组过百例,最小的一组只有两例。做六组横向比较时,最小两组的估计方差会比最大一组大一个量级,任何「六组并列」的图表都要标出每组例数,否则使用者会把置信区间的宽度误当成生物学差异。
| 比较设计 | 可行性 | 注意 |
|---|---|---|
| 最大组与第二组对比 | 可行 | 例数差距仍在两倍以上 |
| 中等组之间对比 | 勉强可行 | 需合并或做分层加权 |
| 小组与任何组对比 | 不可行 | 只有个位数例 |
| 六组并列的趋势检验 | 需谨慎 | 应按例数加权 |
4.2 七层组学的覆盖形状
七层测量的覆盖并不齐。拷贝数、甲基化与表达接近全覆盖,突变与全基因组略低,蛋白层只有二百余例。做多组学融合时,实际可用的是各层的交集,样本量由最薄的一层决定。
| 组学层 | 覆盖病例 | 相对厚度 | 典型用途 |
|---|---|---|---|
| 拷贝数(SNP 阵列) | 全队列 | 最厚 | 亚型鉴定、驱动事件、克隆性 |
| 甲基化 | 全队列 | 最厚 | 表观亚型、免疫微环境推断 |
| 表达 | 二百五十九 | 厚 | 融合基因、亚型聚类、预后 |
| miRNA | 二百五十九 | 厚 | 调控网络、亚型辅助 |
| 体细胞突变 | 二百五十五 | 厚 | 驱动基因、突变负荷 |
| 全基因组 | 二百二十三 | 中 | 结构变异、易位断点 |
| 蛋白(RPPA) | 二百二十三 | 中 | 通路活性、靶点验证 |
「厚」与「薄」指覆盖例数,不是数据质量。RPPA 覆盖最少,但它是蛋白丰度的直接测量,不是从 RNA 推断,做通路活性验证时不可替代。全基因组覆盖中等,但滑膜肉瘤的特征性易位只有靠全基因组或转录组的融合分析才能落地,指望外显子测序抓到它是方法上的错配。
4.3 病理切片:唯一齐备的形态层
切片是这个项目里唯一齐备的形态学层。诊断切片二百五十四例、组织切片二百六十一例,均为全切片扫描,存在 GDC 而非影像库。切片属于样本级,与核酸来自同一块蜡块的相邻切面,这一点比影像配组学更硬。
| 维度 | 诊断切片 | 组织切片 | 说明 |
|---|---|---|---|
| 覆盖 | 二百五十四例 | 全队列 | 组织切片接近全覆盖 |
| 粒度 | 样本级 | 样本级 | 与核酸同源 |
| 格式 | 全切片图像 | 全切片图像 | 需专用读取库 |
| 用途 | 形态诊断、弱监督 | 组织结构、微环境 | 亚型分类的形态标签 |
切片的价值在肉瘤这个病种上比在癌上更高。肉瘤的亚型判定高度依赖形态与免疫组化,而免疫组化结果不在数据里,切片本身就成了唯一可用的形态证据。做亚型分类的弱监督模型时,切片是输入,诊断字符串是标签,但标签的噪声很大,因为同一张切片在不同中心可能被归到不同亚型。
4.4 临床随访的可用性
临床文件在十个类别里排第九,但它是所有分析的锚。GDC 以病例表、随访表、治疗表三张长表提供,按 case 聚合后形成一行。生存分析常用三个字段:生命状态、死亡天数、末次随访天数。
| 终点 | 需要的字段 | 是否可直接计算 | 备注 |
|---|---|---|---|
| 总生存 | 生命状态、死亡天数、末次随访天数 | 是 | 最常用,缺失最少 |
| 疾病特异生存 | 死因相关字段 | 部分 | 死因归类需人工核对 |
| 无进展生存 | 复发或进展日期 | 否 | 需派生终点近似 |
| 无病间期 | 复发日期 | 否 | 同上 |
| 治疗反应 | 统一疗效判定 | 否 | 缺前后配对 |
肉瘤的生存分析还有一个专科问题:分级。软组织肿瘤的预后高度依赖分级,而分级体系在样本采集年代并不统一,有的中心用三级制的 FNCLCC,有的用两级制,字段里混着两种口径。把分级当协变量之前,必须先看取值分布再决定是否合并。
4.5 影像:一个必须说清的缺口
这个项目没有配套的影像集合。TCGA 的放射影像通常以影像归档的专题集合形式发布,SARC 没有对应的集合页;第三方平台挂载的影像资源只有四例 CT 与两例 MR,来自泛癌图谱的影像关联记录,且不是为肉瘤专门采集的。
| 模态 | 挂载例数 | 来源 | 能否支撑影像组学 |
|---|---|---|---|
| CT | 4 | 第三方平台影像资源 | 否 |
| MR | 2 | 第三方平台影像资源 | 否 |
| 病理全切片 | 二百五十四 | GDC | 是,这是唯一的形态层 |
这个缺口不是偶然的。软组织肉瘤的影像采集分散在骨科、普外、妇科与神经外科,术前检查的模态与协议因部位而异,统一归档的难度远高于乳腺或脑肿瘤。对做影像的人来说,这一条应当在选题阶段就查清,而不是下载完才发现。
§5 核心层 C:怎么拿到、怎么接上
5.1 三条通道与门槛
| 通道 | 适用场景 | 认证 | 批量能力 |
|---|---|---|---|
| GDC 门户网页 | 挑选少量文件、看元数据 | 开放层免注册 | 弱 |
| GDC API | 可重复查询、生成清单 | 开放层免注册 | 强 |
| gdc-client | 按清单批量下载 | 受控层需 token | 强,支持断点 |
| cBioPortal | 快速看突变与表达 | 无 | 中,仅二次处理版 |
5.2 用 GDC API 拿项目概览
项目端点会返回病例数、文件数、数据类别与实验策略的汇总。这一段查询是所有后续规划的依据,建议在论文方法里写明查询日期。
curl -s "https://api.gdc.cancer.gov/projects/TCGA-SARC?expand=summary,summary.data_categories&pretty=true" \
| python3 -c "import sys,json; d=json.load(sys.stdin)['data']['summary']; print(d['case_count'], d['file_count'], d['file_size'])"
返回的三个数字分别是病例数、文件数与总字节数。总字节数换算后约一百四十三 TB,其中全基因组与测序读段占绝大部分。注意这个数字包含受控层,不等于开放层可下载的体量。
| 端点 | 返回内容 | 典型用途 |
|---|---|---|
| /projects/TCGA-SARC | 项目元数据与汇总 | 立项、写方法学 |
| /projects/TCGA-SARC?expand=summary | 类别与策略汇总 | 规划存储与算力 |
| /cases | 病例级字段 | 建临床表、取诊断 |
| /samples | 样本级字段 | 区分原发与转移 |
| /files | 文件级字段 | 生成下载清单 |
| 返回字段 | 读法 | 常见误解 |
|---|---|---|
| case_count | 该项目下的患者数 | 当成可分析样本数 |
| file_count | 全部文件数,含受控层 | 当成开放层可下载数 |
| file_size | 全部文件字节和 | 当成矩阵体量 |
| disease_type | 六个大类 | 当成六个亚型 |
| primary_site | 原发部位枚举 | 当成解剖系统分类 |
5.3 先把亚型标签归一,再谈分析
这个项目最该先做的不是下载,而是把诊断字段归一。三十三种字符串里,同一亚型有多种写法,还有非肉瘤诊断。归一的方法是按形态学编码映射到目标分组,而不是按字符串做模糊匹配。
import pandas as pd
clin = pd.read_csv("TCGA-SARC.clinical.tsv", sep="\t", low_memory=False)
dx = clin["primary_diagnosis"].fillna("not reported").str.lower().str.strip()
#-- 按关键词归并,未命中的留在 other,人工复核
rules = {
"leiomyosarcoma": "LMS",
"liposarcoma": "LPS",
"undifferentiated": "UPS",
"fibromyxosarcoma": "MFS",
"malignant fibrous histiocytoma": "UPS",
"nerve sheath": "MPNST",
"synovial sarcoma": "SS",
}
grp = dx.copy()
for k, v in rules.items():
grp = grp.mask(dx.str.contains(k, regex=False), v)
clin["sarc_group"] = grp
print(clin["sarc_group"].value_counts().to_string())
这段代码的产出是一张分组计数表,不是结论。跑完之后一定要人工看一遍 other 里的记录,确认哪些是罕见亚型、哪些是非肉瘤诊断、哪些是未报告。把癌和淋巴瘤留在队列里做「肉瘤」统计,是这类项目最常见的错误。
| 处理步骤 | 目的 | 常见错误 |
|---|---|---|
| 转小写、去空白 | 消除写法差异 | 直接字符串相等匹配 |
| 关键词归并 | 把长尾并入大类 | 用模糊匹配误伤相邻亚型 |
| 人工复核 other | 分离罕见亚型与非肉瘤 | 把 not reported 并入最大组 |
| 记录归并规则 | 保证可复现 | 规则只存在脑子里 |
5.4 按数据类别筛文件
文件端点的过滤器是嵌套 JSON,结构固定:最外层是 and,里面每个条件是一个 in。把项目、数据类别、访问层级三个条件叠起来,就能得到一份干净的清单。
import requests
filters = {
"op": "and",
"content": [
{"op": "in", "content": {"field": "cases.project.project_id", "value": ["TCGA-SARC"]}},
{"op": "in", "content": {"field": "data_category", "value": ["Copy Number Variation"]}},
{"op": "in", "content": {"field": "access", "value": ["open"]}},
],
}
payload = {"filters": filters, "fields": "file_id,file_name,file_size,md5sum", "format": "JSON", "size": 5000}
hits = requests.post("https://api.gdc.cancer.gov/files", json=payload, timeout=120).json()["data"]["hits"]
print(len(hits), round(sum(h["file_size"] for h in hits) / 1e9, 1), "GB")
这段代码返回文件级记录,不是矩阵。要做亚型间的拷贝数比较,还得把基因级调用按样本合并,或直接取 GDC 已打包的矩阵。前者灵活,后者省事,选择取决于是否需要自定义基因注释。
| 过滤字段 | 常用取值 | 说明 |
|---|---|---|
| cases.project.project_id | TCGA-SARC | 项目限定,必填 |
| data_category | Copy Number Variation | 粗分类 |
| data_type | Gene Level Copy Number | 细分类 |
| experimental_strategy | Genotyping Array | 方法限定 |
| access | open / controlled | 访问层级 |
| cases.samples.sample_type | Primary Tumor | 样本类型 |
5.5 走 cBioPortal 的快捷路径
如果只需要突变、拷贝数与表达的联合视图,cBioPortal 的泛癌图谱版是最快的入口。它的样本数二百五十五,蛋白层二百一十八例,坐标是 hg19,适合做初筛与作图,不适合做最终的坐标级分析。
import requests
base = "https://www.cbioportal.org/api"
prof = requests.get(f"{base}/studies/sarc_tcga_pan_can_atlas_2018/clinical-attributes", timeout=60).json()
print(len(prof), [a["clinicalAttributeId"] for a in prof][:12])
返回的是临床属性清单。要拿具体样本的突变,需要再调分子谱端点并指定样本清单。快捷路径的代价是丢掉了 GDC 的样本级细节,做亚型内的分层时会发现可用的协变量变少。
| 通道 | 拿到什么 | 丢掉什么 |
|---|---|---|
| GDC 原始 | 文件级、样本级、全部诊断名 | 需要自己聚合 |
| cBioPortal | 已聚合的矩阵与临床 | 少量病例、部分诊断细节 |
| 泛癌图谱 | 统一处理的通路与免疫评分 | 亚型标签被合并 |
5.6 常见取数故障
| 现象 | 原因 | 处理 |
|---|---|---|
| 分组后最大组异常大 | 把未分化与纤维组织细胞瘤混算 | 按形态学编码核对 |
| 队列里出现癌的诊断 | 未过滤非肉瘤诊断 | 按 primary_diagnosis 剔除 |
| 清单里有文件下载 403 | 含受控层文件 | 按 access 字段过滤 |
| 同一患者多份表达文件 | 不同等分样或不同管线 | 按 workflow_type 固定口径 |
| 蛋白层样本数对不上 | GDC 与二次处理口径不同 | 明确写出用的哪一个 |
| 生存天数出现负值 | 事件日期早于诊断日 | 按数据字典核查 |
5.7 存储与算力预算
| 数据块 | 体量级 | 是否需要 GPU | 备注 |
|---|---|---|---|
| 开放层组学矩阵 | 数十 GB | 否 | 表达、甲基化、拷贝数为主 |
| 诊断与组织切片 | 数百 GB 至 TB 级 | 推理时需要 | 建议流式读取 |
| 受控层读段与全基因组 | 一百 TB 级 | 否 | 需 dbGaP 与机构存储 |
| 中间特征 | 数十至数百 GB | 视方法 | 建议落盘复用 |
§6 与库内词条的关系
6.1 关系图谱
在这个库里,TCGA-SARC 处在「计划—项目—派生」三层结构的中间。向上是 TCGA 泛癌总库,向下是各种拿它再做一层的分析结果集,横向是骨肉瘤、儿童肿瘤与其他肉瘤队列。
| 库内对象 | 关系 | 分工 |
|---|---|---|
| TCGA 泛癌总库 | 上级计划 | 三十三癌种的跨癌种比较与通用取数 |
| TCGA-SARC | 本篇 | 单项目的亚型结构、组学层与取数 |
| TCGA-BRCA | 同级项目 | 同为单癌种,但影像与配对完备 |
| 骨肉瘤队列 | 相邻病种 | 骨来源肉瘤,与本篇的软组织来源不同 |
| 泛癌图谱衍生集 | 下游 | 统一管线重算的表达与评分 |
6.2 与骨肉瘤词条的边界
库内已有骨肉瘤词条,两者容易被混为一谈。区别在三个地方:来源组织不同,骨肉瘤起自骨,软组织肉瘤起自肌肉、脂肪、纤维、血管与神经鞘;人群不同,骨肉瘤以儿童与青少年为主,本项目限定成人;数据来源不同,骨肉瘤的主队列来自另一个计划,与本项目没有病例重叠。
| 维度 | 软组织肉瘤(本篇) | 骨肉瘤 |
|---|---|---|
| 来源组织 | 间叶软组织 | 骨 |
| 年龄分布 | 成人 | 儿童与青少年为主 |
| 亚型结构 | 六个大类、三十三种诊断 | 以单一病种为主 |
| 影像 | 无 | 有 |
| 与本篇关系 | 本篇 | 相邻病种,不可互换 |
6.3 检索路径
| 你的问题 | 先看 | 再看 |
|---|---|---|
| 肉瘤的多组学全貌 | 本篇 §2、§3 | 泛癌总库的癌种章节 |
| 跨癌种的分子共性 | 泛癌总库 | 本篇 §3.2 的分工 |
| 骨来源肉瘤 | 骨肉瘤词条 | 本篇 §6.2 的边界 |
| 肉瘤的病理切片弱监督 | 本篇 §4.3 | 病理基础模型类词条 |
| 罕见亚型的样本量 | 本篇 §4.1 | 国际协作组注册研究 |
§7 质量评估与局限性
7.0 阅读本节前的一个前置校正
评价这个项目时,最容易发生的误判是把「TCGA 的声誉」当成「肉瘤项目的规格」。TCGA 作为计划确实是癌症基因组的里程碑,但落到 SARC 上,成组分析只有六类、蛋白层只有二百余例、罕见亚型只有个位数例,这些数字与计划层面的光环不是一回事。
第二个前置校正是把「七个组学层」当成「七个层都厚」。层数多解决的是「能不能问出跨层的问题」,不解决「每个问题的统计功效」,而肉瘤的亚型切分会把功效再削一次。第三个校正,是把「二百六十一例」当成「可分析样本数」,实际能进多组学交集的是二百例上下。
7.1 五维评分与 DAIMS 对照
评分采用五分制,每一维给一个整数分并写明扣分理由。分数不是排名,是让你快速判断哪一维需要额外投入。
| 维度 | 分数 | 理由 |
|---|---|---|
| 规模 | 2 | 亚型切分后可分析例数偏少,罕见亚型无功效 |
| 结构 | 4 | 标识体系严谨,但诊断字段需大量归一 |
| 配对 | 3 | 切片与分子同源,影像与治疗配对缺失 |
| 可复现 | 4 | 版本化清晰,重处理导致 UUID 漂移 |
| 合规 | 4 | 两层许可清楚,受控层申请周期长 |
| 文档 | 4 | 主论文与数据字典齐全,亚型口径需自行整理 |
按 DAIMS 的三层来看,这个项目的描述层与结构层都做得扎实,访问层的短板在亚型标签。
| DAIMS 层 | 表现 | 缺口 |
|---|---|---|
| 描述层 | 项目元数据、主论文、数据字典齐全 | 亚型与诊断字符串的映射表未随数据发布 |
| 结构层 | 三层树清晰,barcode 逐级可解 | 诊断字段为自由文本,无受控词表 |
| 访问层 | 开放层免注册,API 稳定 | 受控层需单独申请,无影像入口 |
7.2 分数怎么读
规模给 2 分,是因为它的规模与任务不匹配:做六组横向比较勉强够,做单亚型结论远远不够。结构给 4 分,扣在诊断字段上——barcode 体系本身没有问题,问题在于亚型标签要靠使用者自己归一。配对给 3 分,切片与分子是真配对,影像与治疗不是。
可复现给 4 分,扣在 harmonized 重处理:数据生成早于 2018 年,但 GDC 仍在更新文件与注释。合规给 4 分,扣在受控层的审批周期。文档给 4 分,是因为主论文把六类亚型讲清楚了,但官方没有随数据发布一份诊断字符串到亚型的映射表,这份表得自己造。
7.3 已知的、可枚举的偏差
偏差一,亚型选择偏差。入组以「能凑够一定例数」为前提,最罕见的亚型根本没有进来,队列里的亚型谱与临床真实分布不同。偏差二,诊断噪声。病理诊断来自数十家送检单位,同一张切片在不同中心可能被判为不同亚型,未分化多形性肉瘤与黏液纤维肉瘤的边界尤其模糊。
偏差三,混入偏差。三十三种诊断字符串里既有非肉瘤诊断,也有诊断未报告,若不剔除会稀释信号。偏差四,随访偏差。以生命状态为主,复发与转移事件不成体系,治疗字段零散。
| 偏差 | 来源 | 影响方向 | 缓解方式 |
|---|---|---|---|
| 亚型选择 | 入组门槛 | 罕见亚型缺席 | 明确写出覆盖的六类 |
| 诊断噪声 | 多中心病理判读 | 标签错分,效应被稀释 | 按形态学编码复核,或做标签噪声建模 |
| 混入 | 非肉瘤诊断同表 | 合并统计被污染 | 按诊断字段剔除 |
| 批次 | 不同年份、不同平台 | 表达与甲基化漂移 | 分位数归一或 ComBat |
| 随访 | 复发信息缺失 | 无病生存被高估 | 以总生存做主轴 |
7.4 外部验证矩阵
| 结论 | 内部证据 | 外部验证 | 可信度 |
|---|---|---|---|
| 肉瘤以拷贝数改变为主、突变负荷低 | 多平台整合 | 多个独立肉瘤队列复现 | 高 |
| TP53、ATRX、RB1 跨亚型反复突变 | 外显子测序 | 与独立队列一致 | 高 |
| 亚型内存在预后相关的分子亚群 | 表达与甲基化聚类 | 部分亚型有复现 | 中高 |
| 免疫微环境与预后相关 | 甲基化与表达推断 | 需组织学与流式验证 | 中 |
| 滑膜肉瘤的易位驱动 | 全基因组与转录组融合 | 与临床诊断标准一致 | 高 |
| 单亚型的预后模型 | 单队列建模 | 缺外部验证 | 低到中 |
7.5 它为何能持续:因为它是罕见亚型唯一的多层公共参照
数据集的生命周期通常止于论文发表,这个项目不一样。它的引用量在肉瘤领域持续增长,原因是它对多数亚型来说是唯一一份同时具备拷贝数、表达、甲基化、蛋白与切片的公共资源。新方法要证明自己在小样本上可行,往往先拿它跑通。
稳定的代价是它无法回答新问题。单细胞、空间转录组、治疗前后配对、影像随访,这些当代问题它都答不了。它的持续不是因为内容常新,而是因为它把「几个亚型捆在一起做多层测量」这件事一次性做完了,后来者要么重复这件事,要么在它的坐标系里定位自己。
§8 生态位与历史
8.1 历史沿革
| 阶段 | 时间 | 关键动作 | 留下的资产 |
|---|---|---|---|
| 入组与测量 | 主论文前 | 多中心送检、多平台测量 | 标本、分子数据、临床表 |
| 主论文 | 2017 | 六类亚型整合、三条总体结论 | 亚型框架与生物学解释 |
| 泛癌整合 | 2018 | 统一管线重算 | 泛癌版矩阵与终点 |
| 衍生开发 | 2018 至今 | 亚型分类、免疫评分、融合检测 | 分析结果集与模型 |
8.2 主论文的三条结论
主论文的第一条结论是机制层面的:除滑膜肉瘤外,这些肉瘤以拷贝数改变为主,突变负荷低,跨亚型反复突变的基因只有 TP53、ATRX、RB1 少数几个。这一条直接改变了肉瘤的靶向研发思路——驱动事件多在拷贝数上,单点突变不是主要抓手。
第二条是分层层面的:亚型内部的基因组与调控多样性定义了与预后相关的分子亚群。这一条是它作为数据集最有用的部分,因为它把「亚型之内还有分层」这件事变成了可复算的任务。第三条是微环境层面的:由甲基化与表达推断的免疫微环境与预后相关,可能为免疫检查点抑制剂的临床试验提供线索。这一条的可信度低于前两条,因为微环境是推断而非直接测量。
| 结论 | 证据类型 | 对使用者的意义 |
|---|---|---|
| 拷贝数主导、突变负荷低 | 多平台整合 | 分析重心应放在拷贝数层 |
| 亚型内存在预后亚群 | 表达与甲基化聚类 | 可复算的分层任务 |
| 免疫微环境与预后相关 | 甲基化与表达推断 | 假设生成,需组织学验证 |
8.3 衍生资源的谱系
| 层级 | 产物 | 依赖 | 风险 |
|---|---|---|---|
| 原始层 | 测序文件、甲基化阵列、切片 | 无 | 体量大,需自行处理 |
| 特征层 | 表达矩阵、拷贝数调用、蛋白丰度 | 原始层 | 口径不统一 |
| 标注层 | 亚型归一表、切片标签 | 原始层加人工 | 标注质量参差 |
| 模型层 | 亚型分类器、预后模型 | 特征或原始层 | 训练集泄漏 |
| 结论层 | 论文中的亚群与关联 | 以上各层 | 外推性有限 |
8.4 同类项目对照
| 项目 | 亚型覆盖 | 组学层 | 影像 | 定位 |
|---|---|---|---|---|
| TCGA-SARC | 六类成组 | 七层 | 无 | 罕见亚型的多层参照 |
| 泛癌图谱版 | 合并为肉瘤 | 统一重算 | 个位数 | 跨癌种比较 |
| 单病种肉瘤队列 | 单一亚型 | 视设计 | 常有 | 亚型深挖 |
| 骨肉瘤队列 | 骨来源 | 多层 | 有 | 相邻病种 |
| 儿童肿瘤队列 | 儿童肉瘤 | 多层 | 有 | 年龄互补 |
§9 使用指引
9.1 三种角色的路径
病理工程师的路径是「先切片、后亚型」:从 GDC 取全切片,做切片级自监督,再用归一后的诊断做弱监督分类,重点是处理标签噪声。生物信息学者的路径是「先拷贝数、后亚型比较」:直接取基因级拷贝数矩阵,按六个大类分组,找各组的主导扩增与缺失区段,再用表达与甲基化做交叉验证。临床研究者路径是「先分层、后建模」:先按亚型与分级分层,再在层内做生存分析,避免把亚型效应误读成治疗效应。
| 角色 | 第一步 | 第二步 | 第三步 |
|---|---|---|---|
| 病理工程师 | 取切片与切片表 | 切片自监督 | 弱监督亚型分类 |
| 生物信息学者 | 取拷贝数与表达矩阵 | 亚型分组 | 主导事件与通路 |
| 临床研究者 | 取临床表与分级 | 亚型与分级分层 | 层内生存建模 |
| 角色 | 常见误区 | 纠正 |
|---|---|---|
| 病理工程师 | 用原始诊断字符串当标签 | 先归一,再处理标签噪声 |
| 生物信息学者 | 六组等权做统计检验 | 按例数加权或合并小组 |
| 临床研究者 | 把六个大类当六个病 | 大类内还有细分,需说明粒度 |
9.2 一条最短的可用流程
mkdir -p tcga-sarc/data && cd tcga-sarc/data
curl -s "https://api.gdc.cancer.gov/projects/TCGA-SARC?expand=summary&pretty=true" -o project.json
curl -s -X POST "https://api.gdc.cancer.gov/files" \
-H "Content-Type: application/json" \
-d '{"filters":{"op":"and","content":[{"op":"in","content":{"field":"cases.project.project_id","value":["TCGA-SARC"]}},{"op":"in","content":{"field":"data_category","value":["Copy Number Variation"]}},{"op":"in","content":{"field":"access","value":["open"]}}]},"fields":"file_id,file_name,file_size","format":"JSON","size":5000}' \
-o cnv_files.json
python3 -c "import json; d=json.load(open('cnv_files.json')); print(len(d['data']['hits']))"
产出是清单,不是矩阵。下一步用 gdc-client 按清单下载,或直接用打包矩阵端点。无论哪条路,都建议先落一份患者清单与诊断归一表,再开始下载,这样中断后可续,换机器可复现。
| 步骤 | 命令或端点 | 产出 |
|---|---|---|
| 项目概览 | /projects/TCGA-SARC | 规模与类别 |
| 文件清单 | /files | 待下载列表 |
| 批量下载 | gdc-client download -m | 本地文件 |
| 诊断归一 | 关键词加人工复核 | 亚型分组表 |
| 质控 | 交集与重复检查 | 可用样本表 |
9.3 引用方式
| 引用对象 | 应写的内容 | 常见错误 |
|---|---|---|
| 数据(组学) | 项目编号、GDC、访问日期 | 只写 TCGA 不写项目 |
| 主论文 | Cell 2017,DOI | 引成综述 |
| 临床资源 | 泛癌统一终点论文 | 当成原始数据引用 |
| 致谢 | TCGA Research Network 原句 | 改写致谢措辞 |
9.4 合规清单
| 检查项 | 要求 | 状态 |
|---|---|---|
| 组学致谢 | 含 TCGA 原句 | 待核 |
| 受控数据 | 有 dbGaP 批准号 | 待核 |
| 合作者 | 均在授权名单内 | 待核 |
| 重新识别 | 未尝试 | 待核 |
| 二次分发 | 未分发原始受控文件 | 待核 |
| 衍生结果 | 标明来源与版本 | 待核 |
§10 AI 使用声明
| 项目 | 声明 |
|---|---|
| 数据来源 | GDC 项目端点与 cBioPortal 研究元数据,查询日期 2026-10-29 |
| 生成方式 | 人工撰写,AI 辅助整理结构与措辞 |
| 数字口径 | 只采用官方接口与论文摘要,未做二次统计 |
| 未核实项 | 各亚型的精确例数分配、影像缺口的归档侧确认 |
| 分布统计 | 不提供,避免把探索性统计写成规格 |
| 医学建议 | 无,本文不构成诊疗建议 |
| 更新机制 | 官方版本变化时修订,修订日期见页脚 |
| 责任边界 | 使用后果由使用者承担,引用以官方为准 |
常见误读(避坑清单)
| 常见说法 | 实际 | 证据 |
|---|---|---|
| 「TCGA-SARC 覆盖全部软组织肉瘤亚型」 | 成组分析仅六类 | 主论文摘要 |
| 「二百六十一例都能进多组学分析」 | 论文口径为二百零六例 | 论文与 GDC 计数并列 |
| 「有配套的 CT 与 MRI」 | 无独立影像集合 | 第三方挂载仅个位数 |
| 「六个疾病大类等于六个亚型」 | 大类下还有细分亚型 | disease_type 字段 |
| 「诊断字段可以直接分组」 | 自由文本,混入非肉瘤诊断 | primary_diagnosis 取值 |
| 「蛋白层和突变层覆盖一样」 | RPPA 覆盖少三十余例 | 实验策略汇总 |
| 「肉瘤突变负荷高」 | 除滑膜肉瘤外以拷贝数为主 | 主论文第一条结论 |
| 「随访能做无复发生存」 | 缺复发日期 | 临床字段构成 |
| 「病理切片在影像库」 | 切片在 GDC | 两个门户的分工 |
| 「和骨肉瘤是同一队列」 | 来源组织与人群都不同 | 各自项目说明 |
| 「数据冻结后不再变」 | 仍在重处理,UUID 会漂 | GDC 版本说明 |
| 「滑膜肉瘤能用外显子抓到驱动」 | 驱动是易位 | 需全基因组或融合分析 |
FAQ
Q1:TCGA-SARC 覆盖了软组织肉瘤的全部亚型吗?
没有。软组织肉瘤按世界卫生组织的分类有五十余种亚型,主论文只把六类做成组分析,GDC 记录里另有若干零散诊断名与十七例未报告诊断。把它当作「肉瘤全集」会系统性高估亚型覆盖。
Q2:为什么 GDC 写二百六十一例,论文写 206 例?
两者口径不同。GDC 的项目计数包含所有入库病例,其中含诊断未报告与非肉瘤诊断的记录;论文只统计具备完整多平台测量、且归入六个主要亚型的病例。做队列描述时要写明用的是哪一个。
Q3:它有没有配套的影像?
没有独立的影像集合。TCGA 的放射影像通常以影像归档的专题集合形式发布,SARC 未见对应集合;第三方平台挂载的影像资源只有四例 CT 与两例 MR。病理切片齐全,存在 GDC。
Q4:组学数据能不能直接下载?
突变调用、表达矩阵、甲基化 beta 值、拷贝数、RPPA、临床表与病理切片属开放层,注册 GDC 账号即可下载;原始读段与胚系变异属受控层,需经 dbGaP phs000178 申请。
Q5:队列里为什么会有癌和淋巴瘤的诊断?
入组以方案为单位,实际入库按送检单位的病理报告记录原发诊断,个别病例的最终诊断落在癌、淋巴瘤、黑色素瘤或脑膜瘤上。这些病例与肉瘤病例同表,做亚型统计前必须先过滤。
Q6:做亚型比较时,六组要不要等权?
不要。例数从过百例到个位数不等,等权检验会让小组的方差主导结果。应按例数加权,或把小组并入相邻大类并说明合并规则。
Q7:滑膜肉瘤的特殊性在哪里?
它的驱动是特征性染色体易位,突变负荷在全队列中最低,因此不能用「拷贝数主导」这一条去描述它。检测层面也应走全基因组或转录组的融合分析,而不是只看外显子。
Q8:切片能不能直接做亚型分类?
可以,但标签噪声大。诊断字符串来自数十家送检单位,同一张切片在不同中心可能被判为不同亚型,未分化多形性肉瘤与黏液纤维肉瘤的边界尤其模糊。训练时需要噪声鲁棒的损失或人工复核子集。
Q9:临床分级字段能直接用吗?
不能直接当连续变量。分级体系在采集年代不统一,三级制与两级制混用,取值分布需要先看。合并前要明确映射规则,否则分级与预后的关系会被体系差异掩盖。
Q10:用它做外部验证合适吗?
适合作为方法的外部验证集,不适合作为临床可用性的证据。它是回顾性、多中心、亚型不均衡的集合,验证时应按亚型分层报告,并说明每一层的例数。
术语表
| 术语 | 解释 |
|---|---|
| TCGA | The Cancer Genome Atlas,NCI 与 NHGRI 联合的癌症基因组计划 |
| SARC | 肉瘤项目的缩写,也用作 GDC 的队列标识 |
| PanCanAtlas | TCGA 泛癌图谱,跨癌种统一重算的整合成果 |
| GDC | Genomic Data Commons,NCI 的基因组数据门户 |
| barcode | 逐级编码样本来源的字符串标识 |
| TSS | Tissue Source Site,组织来源站点代码 |
| aliquot | 从样本中分装出的一份可用于测量的等分样 |
| WXS | 全外显子测序 |
| WGS | 全基因组测序 |
| RNA-seq | 转录组测序 |
| miRNA-seq | 小 RNA 测序 |
| RPPA | 反相蛋白阵列,直接测量蛋白丰度 |
| CNV | 拷贝数变异 |
| GISTIC | 拷贝数显著区域分析工具 |
| beta 值 | 甲基化探针的甲基化比例估计 |
| ICD-O-3 | 国际疾病分类肿瘤学第三版,形态学编码体系 |
| FNCLCC | 法国肉瘤协作组分级系统,软组织肉瘤常用三级制 |
| LMS | 平滑肌肉瘤 |
| LPS | 脂肪肉瘤 |
| UPS | 未分化多形性肉瘤 |
| MFS | 黏液纤维肉瘤 |
| MPNST | 恶性外周神经鞘瘤 |
| SS | 滑膜肉瘤 |
| dbGaP | 基因型与表型数据库,受控访问的审批入口 |
| SVS | Aperio 全切片图像格式 |
| DUC | Data Use Certification,数据使用认证 |
| OS | 总生存 |
| DSS | 疾病特异生存 |
| PFI | 无进展间期 |
| DAIMS | 数据集资产信息模型,用于统一描述数据集的描述层、结构层与访问层 |
附录 A:核心数字核对表
| 项 | 值 | 来源 | 来源层级 |
|---|---|---|---|
| 病例数 | 261 | GDC 项目端点 | 官方 API |
| 文件数 | 16,404 | GDC 项目端点 | 官方 API |
| 总体量 | 约 143 TB | GDC 项目端点 | 官方 API |
| 数据类别 | 10 | GDC 项目端点 | 官方 API |
| 实验策略 | 9 | GDC 项目端点 | 官方 API |
| 疾病大类 | 6 | GDC 项目端点 | 官方 API |
| 原发诊断字符串 | 33 | GDC 病例 facet | 官方 API |
| 蛋白层覆盖 | 223 | GDC 项目端点 | 官方 API |
| 全基因组覆盖 | 223 | GDC 项目端点 | 官方 API |
| 诊断切片覆盖 | 254 | GDC 项目端点 | 官方 API |
| 主论文例数 | 206 | Cell 2017 摘要 | 论文 |
| 泛癌版样本 | 255 | cBioPortal 元数据 | 第三方接口 |
| 泛癌版蛋白 | 218 | cBioPortal 元数据 | 第三方接口 |
| 影像挂载 | CT 4、MR 2 | cBioPortal 资源清单 | 第三方接口 |
| 主论文时间 | 2017-11-02 | PubMed | 论文 |
| 结构项 | 值 | 来源 |
|---|---|---|
| 顶层单位 | case(患者) | GDC 数据字典 |
| 患者级标识长度 | 12 位 | 官方 barcode 定义 |
| 样本级标识长度 | 16 位 | 官方 barcode 定义 |
| 切片粒度 | 样本级 | GDC 文件结构 |
| 影像粒度 | 不适用 | 无影像集合 |
| 跨层连接方式 | 字符串相等 | 单一门户内 |
附录 B:数字的来源分层
| 层级 | 数字 | 说明 |
|---|---|---|
| 官方 API | 二百六十一、16,404、143 TB、10 类、9 策略、各层覆盖数 | 2026-10-29 查询 GDC 项目端点 |
| 官方 API | 6 个疾病大类、三十三种诊断字符串 | 同日查询 GDC 病例 facet |
| 论文摘要 | 二百零六例、六类主要亚型、三条总体结论 | Cell 2017 摘要 |
| 第三方接口 | 二百五十五样本、二百一十八蛋白、CT 4、MR 2 | cBioPortal 研究元数据 |
| 未核实 | 各亚型的精确例数、影像缺口的归档侧确认 | 官方未给统一口径 |
附录 C:完整参考文献
- Cancer Genome Atlas Research Network. Comprehensive and Integrated Genomic Characterization of Adult Soft Tissue Sarcomas. Cell, 2017, 171(4):950-965. DOI: 10.1016/j.cell.2017.10.014.
- Hoadley KA, Yau C, Hinoue T, et al. Cell-of-Origin Patterns Dominate the Molecular Classification of 10,000 Tumors from 33 Types of Cancer. Cell, 2018.
- Liu J, Lichtenberg T, Hoadley KA, et al. An Integrated TCGA Pan-Cancer Clinical Data Resource to Drive High-Quality Survival Outcome Analytics. Cell, 2018.
- Weinstein JN, Collisson EA, Mills GB, et al. The Cancer Genome Atlas Pan-Cancer analysis project. Nature Genetics, 2013.
- Genomic Data Commons. GDC Data Portal, TCGA-SARC project page. https://portal.gdc.cancer.gov/projects/TCGA-SARC.
- cBioPortal for Cancer Genomics. Sarcoma (TCGA, PanCancer Atlas) study. https://www.cbioportal.org/study/summary?id=sarc_tcga_pan_can_atlas_2018.
- National Cancer Institute. The Cancer Genome Atlas program page. https://www.cancer.gov/ccg/research/genome-sequencing/tcga.
附录 D:任务代码
下面的脚本用来快速判断「归一之后每个亚群还剩多少例」,是决定能不能做亚型分析的第一步。
import pandas as pd
clin = pd.read_csv("TCGA-SARC.clinical.tsv", sep="\t", low_memory=False)
dx = clin["primary_diagnosis"].fillna("not reported").str.lower()
non_sarcoma = ["carcinoma", "lymphoma", "melanoma", "meningioma", "thecoma", "papilloma"]
mask_bad = dx.apply(lambda s: any(k in s for k in non_sarcoma)) | (dx == "not reported")
cohort = clin[~mask_bad].copy()
print("total", len(clin))
print("excluded", int(mask_bad.sum()))
print("analyzable", len(cohort))
print("groups", cohort["primary_diagnosis"].nunique())
输出四个数字,回答「原表多大、剔掉多少、剩下多少、剩几种诊断」。第三个数决定后续能做几组比较,第四个数提醒还需不需要进一步合并。
| 输出 | 含义 | 用途 |
|---|---|---|
| total | 原表病例数 | 与 GDC 项目页对照 |
| excluded | 非肉瘤与未报告记录 | 说明剔除规则 |
| analyzable | 可进亚型分析的例数 | 队列规模 |
| groups | 剩余诊断种类 | 决定合并粒度 |
附录 E:如果只记五件事
| 序号 | 要点 |
|---|---|
| 一 | 它是二百六十一例的成人软组织肉瘤多组学项目,不是肉瘤全集 |
| 二 | 肉瘤有五十余种亚型,它只把六类做成组分析 |
| 三 | 没有配套影像,唯一的形态层是 GDC 里的病理全切片 |
| 四 | 七个组学层覆盖不齐,蛋白与全基因组最薄 |
| 五 | 用之前先归一诊断字段,再把癌与淋巴瘤剔出去 |
编辑说明
本篇的核验日期为 2026-10-29,规模数字取自 GDC 项目端点与 cBioPortal 研究元数据,生物学结论取自 2017 年 Cell 主论文摘要。未做全量下载与逐条统计,分布类数字一律不写;官方接口与论文口径存在差异时,正文并列呈现而不做裁定。各亚型的精确例数分配、影像缺口在归档侧的确认结果均未核实,标注为未核实项。修订时优先更新附录 A 与附录 B,再同步正文中的概览表。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- hnsc — 共享标签:基因组学与多组学 / 肿瘤学 / 病理图像 / 转录组 / 多模态
- tcga-gbm — 共享标签:基因组学与多组学 / 肿瘤学 / 病理图像 / 多模态
- spatial-touchstone — 共享标签:基因组学与多组学 / 肿瘤学 / 病理图像 / 转录组
- tcga-lgg — 共享标签:基因组学与多组学 / 肿瘤学 / 多模态
- hancock-hnscc — 共享标签:肿瘤学 / 病理图像 / 多模态
- sthelar — 共享标签:基因组学与多组学 / 肿瘤学 / 病理图像 / 转录组
- cellxgene — 共享标签:基因组学与多组学 / 病理图像 / 转录组
- icgc — 共享标签:基因组学与多组学 / 肿瘤学 / 病理图像
- hest-1k — 共享标签:肿瘤学 / 病理图像 / 转录组
- so3d — 共享标签:基因组学与多组学 / 转录组 / 多模态
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

