生信数据库怎么选:先看你要回答什么问题
GEO、TCGA、STRING 各管一段,混着用只会白忙
打开浏览器收藏夹,GEO、TCGA、STRING、KEGG、GTEx、cBioPortal排成一列,每一个看起来都该用上,每一个点进去都不知从何下手。这是很多人遇到的第一道坎——不是跑不通代码,而是不知道手上的这批数据能否回答你的问题。
这篇文章并不会把所有的数据库都给你列出来(你记不住的)。它想为你做的三件事是:1.根据研究目的对常用库进行分类,并说明每种类型的适用场景;2.厘清最易混淆的版本与批次概念;3.探讨当前AI工具与MCP服务器在哪个环节能提供助力。
— 01 —
先分清数据库的三种角色
最底层为原始数据仓库。GEO/SRA/ArrayExpress:别人上传的表达式和测序原始数据。TCGA:现在通过GDC获取,里面有肿瘤的表达/变异/临床随访。GTEx:正常组织表达基线。CPTAC:蛋白层面。这些库的共同点是显而易见的:给你原材料,但你要自己控制质量、标准化、分组和统计。它们是证据的来源,它们也是工作量最大的一块。
中间一层为注释和知识库。Ensembl/RefSeq/GenBank管理基因的结构与序列,UniProt管理蛋白质,GO/KEGG/Reactome为基因和通路分类。它们本身不产生数据,只在你做注释、ID转换、富集分析的时候被调用。最容易被忽略的一层,却是版本问题的根源——同一基因在两个版本的注释中可能具有不同的编号和转录本数。
最上面一层为已计算好的成品库。cBioPortal、GEPIA2、TIMER2.0、Kaplan-Meier Plotter:你填个基因它告诉你生存和免疫浸润;STRING:你给它一列基因它就给你个互作网;Metascape、DAVID:它直接给你富集。对于新手来说很友好,快速验证一个想法,补一张图都很轻松。代价是参数被固定:分组如何划分,随访终点如何设定,阈值是多少,这些都是固定的,无法更改也无法在方法中交代每一步。
一次研究一般只需一个主数据源,加2~3个注释或验证库。先把“我要回答什么问题”写在纸上,再点收藏夹。
— 02 —
按目的选:四类问题,四组库
如果是“处理组和对照组之间哪些基因表达不同”这个问题,那么主战场就是GEO。检索步骤:先确定组织和平台,再查看此数据集是否包含所需的处理和对照,每个组中有多少个样本,是否是同一平台。芯片和RNA-seq的数据不能混合在一块表中进行比较。想做肿瘤和癌旁对比选TCGA,想看基因在正常组织的分布选GTEx补基线。
比如问“这个基因高表达的病人是不是活得更短”?光有表达矩阵是不够的,还需要随访信息。注意TCGA的临床数据从GDC下载时,生存时间的定义(总生存、PFS、DFS是不同的,选择不同结论也不同)。GEO中部分数据集的随访信息随附于系列矩阵或补充文件中,需要自行验证。想快一点的cBioPortal、Kaplan-Meier Plotter、GEPIA2都可以直接生成生存曲线,用于验证没有问题,但是作为主结果要小心。
关心突变、拷贝数、融合,离不开TCGA的MAF文件和cBioPortal。做临床解读,在ClinVar中查看变异的临床意义,gnomAD查看人群频率,dbSNP中查询编号,COSMIC等肿瘤突变数据库需要注册才能使用。这里有个新手容易犯的错误,将胚系变异作为体细胞突变提交,取数时注意看清文件类型及变异调用过程。
STRING, BioGRID, IntAct -蛋白互作;Reactome, KEGG-通路注意STRING的置信度阈值需要写在方法中,0.4和0.7得出的网络大小差异很大,得出的结论也会随之改变。共表达分析例如WGCNA严格来说是一种方法而不是一个数据库,但是它经常与这些库一起使用。
GEO
优势:样本类型最杂,几乎任何组织、任何处理都能找到,适合自定义再分析
局限:分组由上传者定义,质量参差,临床随访不全,需要逐个数据集确认
TCGA / GDC
优势:表达、变异、临床随访配套齐全,适合预后和突变分析
局限:只覆盖肿瘤,癌旁组织不等于健康人组织,历史数据与新版坐标不同
成品库(cBioPortal、GEPIA2 等)
优势:开箱即用,不用写代码,适合快速验证和补图
局限:参数固定,方法学细节不透明,难以作为唯一证据
— 03 —
真正让人翻车的,是版本和批次
版本问题,听着是小事,但却决定着能否复现。人类基因组存在hg19和hg38两个坐标,TCGA历史数据以及GDC新版本不在同一坐标上。GEO的GPL平台注释文档更新,一批探针隔年映射结果可能不同。Ensembl和GENCODE版本不同,转录集合不同。KEGG和GO本身在不断更新,一份差异基因时隔几个月进行富集,其通路列表不同。做法很简单,在方法和脚本中写明数据库名称、版本号和下载日期,不要仅仅写“数据来自TCGA”这么简单。
批次问题更加隐蔽。经常会有将几个GSE合并增大样本量的情况,但是不同平台、实验室、建库方法的技术差异在聚类图上会直接分两坨。ComBat,removeBatchEffect等,要求每个batch都要有病例和对照,如果一个batch全是肿瘤,一个batch全是正常,校正后就把真实差异也消除了。所以芯片数据和RNA-seq数据也不要硬拼。
还有两个小细节很容易被略过。基因ID:探针到基因符号一般是一对多,Ensembl ID带有版本后缀,基因符号也会更新,转换时要保留完整的映射表,这样比事后猜测要省事的多。样本定义:TCGA中的“癌旁”为癌旁组织,其长期受到肿瘤微环境的影响,与健康人组织有所区别;GEO中标记normal的样本包括健康志愿者外周血及良性病变等,混合对比无意义。
☐ 坐标和注释版本
合格:方法中注明hg19或hg38、Ensembl或GENCODE版本号。不合格:仅写“人类参考基因组”。
☐ 样本是否可比
合格:同平台、同组织来源、处理条件明确。不合格:直接合并不同GSE的肿瘤和正常。
☐ 生存终点定义
合格:清楚表明是OS、PFS还是DFS,如何计算时间。不合格:将不同定义的数据放入一个Cox模型中。
☐ 基因 ID 映射
合格:保留探针到基因的完整映射表。不合格:一对多探针随手取一个或直接平均。
— 04 —
AI 调库:能省哪几步,哪几步必须自己盯
今年的一大变化就是MCP服务器的诞生。MCP是一种使AI能够使用外部工具的协议,将数据库的检索接口包装成“工具”,模型可以直接查询序列、结构、文献、微生物资源库等,无需自己编写API或查阅文档。其实已经有人对公共资源进行了这样的封装,比如BV-BRC这样的微生物资源平台。对使用者来说,好处是“问一句就能取数”,坏处是中间过程被藏起来了。
藏起来的部分恰恰是最需要留痕的——查的是哪个版本,用了什么检索式,返回多少条,过滤条件是什么?这些不明确,导致无法重现和描述方法。另一个问题是混淆了相似编号的数据集或芯片平台与测序平台。所以和AI协作的正确姿势不是“帮我找个数据集做分析”而是让它先列候选、你逐条确认。
稳妥的流程是三步:先说清研究问题、组织、平台、分组和样本量要求;让 AI 列出候选数据集,附上编号、平台、样本构成和是否有随访;你核对原始页面之后再让它下载和分析。PaperOK 科研助手的生信模式大致就是按这个顺序走的——一句话描述研究问题和数据,它会先跟你确认数据集、分组和统计标准,再下载公开数据或读取本地文件,最后交付图表、统计表、报告和可复现的脚本;手上有 GSE 编号,也可以直接报给它。
可以照着说的一句话
我要比较某个基因在肿瘤与癌旁组织的表达量差异,样本限定为肺腺癌,不限平台但是要求每组样本≥30例,请先把符合的数据集编号、平台和样本数以及随访情况发给我,我确认后再下载。
把组织、分组、样本量、平台都写进去,比一句“帮我找个数据集”能省掉大半返工。
— 05 —
一个能跑通的上手顺序
刚起步,不要急着上5个库。先选择一个与课题最接近的GSE,将差异分析-富集-可视化流程走一遍,再考虑扩大样本、增加验证。这样遇到的问题都是有边界的,数据格式不对,分组标签没有,注释版本不对,一个接一个可以定位。反之,一开始就将五个数据集合并,如果出错,你都不知道哪步错了。
验证部分可用成品库补充:cBioPortal分析突变及生存,GEPIA2分析表达,TIMER2.0分析免疫浸润,STRING分析互作。它们的结果与主分析方向相同,是一个好的佐证,反之,不要急于否定,回头检查样本构成、参数设置。整个过程,版本号、检索式、参数、脚本随手记在一个文件里,写文章时会感谢现在的自己。
数据库不是用来收集的,
是用来回答问题的。
关于 PaperOK科研助手 · 生信模式
运行在你电脑上的 AI 生信搭档:25 个生信插件覆盖基因组、转录组、单细胞、空间组学与蛋白质组。一句话描述研究问题,自动完成数据下载、质控、分析与报告,交付图表、统计表和可复现脚本。