这个基因在哪个器官里表达高?
bulk RNA-seq,54个组织位点
Human Cell Atlas
人体所有细胞类型的完整目录
多中心联盟项目,数据分散在各门户
SCEA
这个基因在某个研究的哪些细胞类型里是?
统一重处理的scRNA-seq实验集
进行一下类比, (关于这个类比的失效边界可查看第七节), GTEx是一栋楼里面每间房屋各自电表读取出来的总数, SCEA是每间房屋之内每一盏灯的开关所处状态。
二、家底盘点:2026年8月24日实测
SCEA给出一个官方JSON清单端点, 一回返回全部实验元讯息。当天抓取结果:
C:///curl.exe -s "" -o .json
指标
实测数值
说明
实验总数
384个
全部为(正常/参照态表达)
细胞总数(合计)
15,370,362
约1537万个细胞/文库
物种数
22种
动物359 / 植物21 / 原生生物3 / 真菌1
人/鼠实验
160 / 125个
果蝇41个排第三(Fly Cell Atlas贡献)
最大实验
E-ANND-5:911,873 cells
发育期人体免疫系统跨器官图谱
HCA关联实验
99个
标记为Human Cell Atlas项目
COVID相关实验
22个
2020-2021疫情期的集中收录
数据更新跨度
2018-05 至 2026-04
最近一次更新2026年4月
几个值得记住的点:
SCEA 是只进行操作而不单单是做, 疾病与正常的差异分析实验归属 Atlas 主库(bulk 侧) , 此处收纳的是“正常态 / 参照态”的单细胞表达 , “assay”同细胞类似 , 但严格来讲是单个细胞构建的一个测序文库, 个别实验中一个细胞测两次会存在轻微重复计数 , 在量级方面可忽略不计 , 规模上它并非最大的单细胞数据库(HCA 、体量更大) , 但它是唯一由 EBI 运用同一套流程统一重新处理的 , 这便正是它的核心价值 , 下一节展开 , 三是为何需要”统一重处理”? ——SCEA存在的根本理由
设想一下, 你从GEO那儿下载了5篇有关乳腺上皮的scRNA-seq研究, 打算进行合并分析, 是如此吧。
SCEA将这些通通消除, EBI团队在获取原始数据之后, 运用自身的统一流程, 也就是先进行比对, 接着开展定量, 随后实施质控过滤, 再予以聚类, 之后进行基因检测, 最后进行细胞类型注释, 重新走上一遍, 然后:
也要知晓代价: SCEA进行重处理后所形成的结果给出的是“一份观点”, 并非属于唯一性的真理。原作者要是选用了另外一套参数, 那么就有可能聚集出数量不一样的亚群。在进行引用的时候, 写上“经SCEA统一管线重处理”, 相较于写上“SCEA证实了XX”, 会显得更为准确。
四、采取三种用法, 先是网页, 接着进行下载, 然后是 API4.1 网页交互, 此为零代码的情形。
首页的搜索框之中输入基因名, 像KRT8这样的, 选择物种之后, 所得到的是这样的结果列表, 即“哪些实验之中这个基因存在有表达或者记录的”。点击进入任何一个实验:
适合快速看一眼、截个图放PPT。
4.2 文件下载(推荐给要做正式分析的读者)
在每个实验页面的右上角位置, 有按钮能够给出标准文件包。需要注意此项, 即这个地方的URL模式, 是网上教程出错频率最高的所在之处。具体而言, 路径呈现的是(单数)这种情况, 而非(复数)的状况。并且, 源码作者特意撰写了一条注释, 用来提醒关于这一点的相关内容。
当日实测(以E-CURD-7人乳腺上皮为例):
BASE=""
C盘斜线斜线curl.exe, 以静默方式, 使用“$BASE/?=&=-”这个内容, 输出到.tsv文件。
C盘根目录斜线斜线curl.exe, 以静默模式运行, 请求指向$BASE斜线zip问号等于号负号genes的链接, 将结果输出到点zip文件。
的全部合法值(实测自官网下载菜单):
内容
格式
-
每细胞一行:供体、组织、细胞类型标签等
TSV
-raw
过滤后的raw 矩阵
MTX三件套zip
-
进一步过滤版
MTX zip
归一化后的表达矩阵
MTX zip
-genes
每个一个TSV
TSV zip
-
实验级说明文件
zip
细胞→对应关系
TSV
MTX三件套乃稀疏矩阵, 此稀疏矩阵以(.mtx)为标识, 包含行名也就是基因, 还附带列名即细胞, 这些都能够直接进行读取。经过真实测试, 在E-CURD-7中, 存在25,155个基因与631个细胞, 这是经过质量控制之后的数据, 其raw包大小约为20 MB。
4.3 一条龙:官方封装
内置了SCEA下载函数,两行拿到对象:
as sc
adata =
sc..("E-CURD-7")
# 返回 :X= , obs=细胞元数据+, var=基因
它在内心里就是捣鼓拼接上面那两个URL, 也就是.tsv加上 -raw.zip, 所以同样会受到”单数”URL的限禁制的约束。不想进行安装其部件这一行为动作和操作的人, 使用4.2版本的裸curl加上自己动手去展开、组装起来, 也完全是具有等价性、等同性的。
4.4 JSON查询端点(本文实测的重点)
索尼电脑娱乐美国分公司没有具备正式性质的REST API文档, 然而前端进行调用的JSON服务能够直接加以使用。
# 全部实验元信息
curl -s "
"
# 某实验的基因热图数据(按聚类)
curl -s "
"
# 某基因在某实验的逐细胞表达(UMAP坐标叠加用)
curl -s "
"
# 基因名自动补全
curl -s "
+"
实测踩坑实录(都是2026-08-24当天撞上的):
JSON端点速度极其慢, 其中全库基因检索超过120秒都没有响应, 说明这是服务端所出现的问题, 并非是操作姿势有误。对于批量任务而言应当改用4.2下载文件接着在本地进行处理。cell - plots必须携带维度参数, 当等于UMAP时若不携带等于20会报错。这些默认参数隐藏在实验页面的HTML里的字段中, 需先抓取页面才能够调用API。k值不可以随意猜测, 因为每个实验的预聚类k值是不一样的, 例如E - CURD - 7是。
2,4,5,7,11,17,22,26
传错k报,Index 0超出范围。k列表也在页面HTML里。基因只有ID, 没有其他内容: 需自我获取端点或转换(见第五节实战相关内容)。这些JSON端点属于前端内部接口, 不存在稳定性承诺, 在生产环境中要谨慎依赖。五、十分钟的实战描述: 从实验到“哪个表达KRT8最高”。
场景: 你想晓得, 于乳腺上皮研究E-CURD-7之时, 8(KRT8, : ENSG)主要处于哪一群细胞当中。
Step 1 — 拿设计文件,看每细胞元数据:
as pd
= pd.(".tsv", sep="\t")
print(.Shape), (867, 25), 注意, 包含全部867个assay, 然而矩阵仅仅保留经过QC之后的631个细胞。
Step 2 — 拿归一化矩阵,抽KRT8那一行:
, numpy as np
from scipy.io
z = .("norm.zip")
mtx = (z.open(
n for n in z.() if n.(".mtx")
)) # 25155 x 631
要留意, _rows/_cols文件呈现的是"IDID"这样的双列格式情况, 从中选取的是第一列。
genes =
把n赋值给n, 对于在z的括号里的n而言, 如果n有“_rows”这个属性。
cells =
l.().split("\t") for l in z.open(
请你提供的内容有误, 这看起来不像是正确的代码片段。请修正后再让我进行改写。
krt8 = mtx
若numpy数组中的基因等于“ENSG”采用np.where函数, 冒号。
.().()
Step 3 — 对比各的平均表达:
clu = pd.(
",
sep 等于"\t"), # 第一列, sel.K 等于 TRUE 的那一行, 就是默认聚类。
row = clu.iloc
= dict(zip(clu., row.))
df = pd.({"":
for c in cells
, "KRT8":krt8})
试验实测得出的输出结果是, 4 的平均表达处于最高水平, 大约为 557 CPM, KRT8 在此次实验里 75%的细胞当中被检测到出现, 这一情况是符合乳腺腔上皮的生物学预期的。
步骤4, 进行交叉验证基因表, 要下载-genes包, 查看KRT8是不是出现在某的高logFC名单之中(实际测量它处于k=17聚类情况下17的第9位, logFC等于4.86, 这与步骤3的结果是一致的), 接着随机抽查排名靠前的(比如1榜首ENSG为MGP, logFC是7.08)前去文献核对查看其生物学合理性。
整个流程, 不安装任何单细胞软件, 纯粹借助scipy, 在笔记本上便可运行。这恰恰就是SCEA的价值所在, 它把那些繁重的工作预先完成了, 并留给你的仅仅是查询以及小规模的计算。
六、什么时候别用它?
诚实地说出边界,帮你省时间:
场景
该用SCEA吗
替代方案
快速查基因的细胞类型分布、找
首选
教学演示、截图入门
首选
需要疾病vs对照的差异分析
只收
/ 原始GEO
需要最新最大的人类图谱(如 全量)
️ 部分收录
HCA Data /
需要自己重聚类、改参数
️ 可以下载MTX重跑,但要尊重原设计
直接下原始数据
需要蛋白水平验证
只有RNA层
Human Atlas
还有一个隐性的限制, 那就是SCEA的收录存在选择性, 何为选择性? 是需要经过人工筛选以及质量把关的那般过程, 并非所有的GEO scRNA-seq数据都在其中。另外要注意, 查完之后没有找到相关数据, 并不等同于实际上数据不存在。
七、类比的失效边界(认真版)
第一节讲“GTEx是房间电表总读数, SCEA是每盏灯的开关”, 这般阐述有着不恰当性, 这番类比存在误导性, 此比喻会在三处地方误导你:
不是开关, 单细胞表达是连续谱。在同一个细胞类型当中, KRT8的表达量存在高低差别(呈对数正态分布), 并非亮或灭的二值情况。更确切的图像是, 每一盏灯都设有一个亮度调节旋钮, 并且该旋钮在同类灯之间的位置也并非完全相同。细胞类型自身是聚类的结果, 并非天然的实体。k等于7时聚出的3, 和k等于26时聚出的3, 有可能完全属于不同的细胞集合。SCEA给出的细胞类型标签, 是基于这套流程以及这组参数所生成的一份注释, 并非柏拉图理念中真正的细胞类型。类比将问题给掩盖了, 单细胞捕获效率存在着限度, 真实表达的基因存在着相当大的概率被测到为0, 也就是假阴性, “灯灭”这种情况, 有可能是真的没开启, 还有可能是灯已经开启了, 然而却没有人看见, 在解读低表达或者零表达的时候, 需要留好这个心眼, 八, 横向对比的那个速查表。
维度
SCEA
GTEx
HCA
数据层级
单细胞()
bulk
单细胞(含疾病)
单细胞(图谱级)
重处理
EBI统一管线
官方管线
️ 收录即用为主
各团队自有
体量
384实验/1537万细胞
~2万样本
数千万细胞
千万级
物种
22种
人为主
人为主+模式动物
上手难度
适合
入门/快查/教学
组织层定位
大规模整合分析
权威图谱引用
九、FAQ
问题1: SCEA跟Atlas存在着怎样的关系呢。它们是来自同一个团队(也就是EMBL - EBI的Atlas组)的两个不同模块, 其中主库(gxa)负责管理bulk以及蛋白表达方面, 而SC子库(gxa/sc)负责管理单细胞相关内容。在文献引用的时候要留意进行区分, 旗舰论文共同使用“Acids数据库特刊”, 这种特刊每年会有一篇, 是一个系列的。
问句二: 数据可不可以用于商业用途? SCEA自身是依据EBI开放政策来提供的, 然而每一个实验另外都有着原始来源许可(大多数属于CC - BY类别), 在下游使用之前要前往实验页面去确认相关的来源条款。
问题3: 怎样进行引用行为呢? 资源本体引用NAR系列论文内容(2020年为创刊号、2024年有更新、2026年为最新状态), 具体的发现情况还需要引用原始研究内容(实验页面均给出了原文对应的链接)。
Q4: 为何我所搜索的基因于某个实验当中查找不到呢? 存在三种可能性: 其一, 该一实验未曾测到该基因(基因panel以及物种相互不匹配这一情况);其二, 致使表达量成为零;其三, SCEA重处理之际的质控将其过滤掉了。应当先于别的实验进行交叉确认之后再得出结论。
Q5: 是否能够拿到原始的fastq呢? 答案是否定的。SCEA所给予的是重新处理之后的产物, 具体为矩阵以及聚类等方面。原始的序列需要从实验页面的链接进行跳转, 从而到源库当中去另外获取。这里的源库是GEO以及EGA。而涉及到人类供体的那一部分, 通常是需要进行dbGaP或者EGA的受控申请的。