拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Loupe Browser实用指南:从Cell Ranger到单细胞可视化探索

Loupe Browser实用指南:从Cell Ranger到单细胞可视化探索

跑完 Cell Ranger,拿到一个几百 MB 甚至几个 GB 的文件夹之后,你的下一步是什么?我见过不少人第一反应是打开 R 或者 Python,开始写 Seurat/Scanpy 脚本。但说实话,在我自己的项目里,拿到 10xGenomics 下机数据后,我第一件事永远是先打开 Loupe Browser 把数据“看”一遍,而不是急着跑代码。

原因很简单:Loupe Browser 是 10x Genomics 官方免费的可视化工具,专门用来读取 Cell Ranger 输出的.cloupe文件,把聚类结果、UMAP/t-SNE 坐标、基因表达、差异表达这些信息用图形界面呈现出来。很多分析决策,比如“这批样本要不要合并”“哪几个 cluster 明显是 doublet”“这个 marker 基因到底干不干净”,在 Loupe 里看一圈,心里基本就有数了。这篇就把我在实际项目里使用 Loupe Browser 的经验、流程、踩过的坑,一次说清楚。

1. 它是干什么的:揭开“.cloupe”的神秘面纱

1.1 下机数据到生物学结论之间,缺的那一层

做单细胞转录组的人都知道,Cell Ranger 跑完之后会输出一系列文件,包括filtered_feature_bc_matrix矩阵、analysis文件夹里的聚类结果和降维坐标,还有最容易被忽视的.cloupe文件。前两个是给程序员用的,.cloupe是给“人”用的。

.cloupe其实是一个打包好的二进制可视文件,里面把降维坐标(t-SNE、UMAP)、聚类结果、每个细胞的基因表达矩阵、甚至样本元信息都塞到了一起。你用 Loupe Browser 打开它,不需要写一行代码,就能在电脑上像浏览地图一样,把数万个细胞一个一个看过去。这种“所见即所得”的能力,在项目刚开始探索数据的时候,价值远大于立刻跑去跑差异分析。

1.2 只有矩阵文件也能看吗:理解 cloupe 与 filtered 矩阵的关系

很多初学者有一个误解:手头有filtered_feature_bc_matrix或者一份表达矩阵,是不是就能拖进 Loupe Browser 里看?

不行。Loupe Browser 直接识别的不是矩阵,而是.cloupe这类专属可视化文件。你拿到的矩阵需要自己通过编程工具处理,但.cloupe是 Cell Ranger 在分析流程里自动生成的。换句话说,只要你的 Cell Ranger 版本和配套的 Loupe Browser 版本对得上,拿到.cloupe是水到渠成的事。

那如果公司或者公共数据库只给了你矩阵文件呢?那 Loupe Browser 就派不上用场了。我的建议是,只要条件允许,尽量要求上游提供.cloupe文件。它本质上是一个分析和可视化之间的桥梁,没有它,Loupe Browser 就无从谈起。

1.3 支持的平台不只有 3' 单细胞

很多人以为 Loupe Browser 只能看单细胞转录组,其实不对。它支持 10xGenomics 的多个平台输出:3' 单细胞转录组(GEX)、5' 转录组、V(D)J 免疫组库、ATAC 染色质可及性分析,甚至 Visium 空间转录组的组织切片图也能在 Loupe 里叠加显示。不同类型的实验对应不同的可视化文件后缀,比如.cloupe最常见,V(D)J 有专门的格式,ATAC 也有对应的文件类型。

我刚开始用的时候只拿它看表达数据,后来才发现免疫组库的结果也可以用同一个软件看克隆分布和 VDJ 序列特征。现在新版本的功能更丰富,CITE-seq 这类蛋白标签数据也能在界面上直接按蛋白表达量着色。如果你们实验室同时做多种 10x 平台的实验,花一个下午把 Loupe Browser 摸熟,后续所有项目的探索阶段都会省力很多。

2. 从 Cell Ranger 输出到第一张 UMAP:我的上手流程

2.1 cloupe 文件从哪里来

绝大多数情况下,cloupe文件不需要你手动生成。只要你的 Cell Ranger 分析跑完了,在输出目录下就会有一个cloupe子文件夹,里面放着自带的可视化文件。

这里有一个细节容易忽略:如果你用cellranger count处理的是单个样本,得到的.cloupe就是这个样本自己的细胞。如果你跑的是cellranger aggr做多样本合并,那 aggr 的输出目录里也会有一个合并后的可视化文件,里面带有所有样本的细胞,还自动标好了样本来源。Loupe 在处理合并数据时,可以在界面里按样本给细胞着色,方便你看不同样本之间的细胞分布有没有明显偏移。

我在实际项目里,经常是先跑完cellranger count,把每个样本的 cloupe 文件都打开看一眼,确认每个样本的细胞数、聚类结构、doublet 程度,然后再决定要不要 aggr。这个顺序能帮你直接在 Loupe 里完成“数据分析前置检查”,比跑完 aggr 再后悔省事。

2.2 启动软件与主界面速览

Loupe Browser 是桌面应用,支持 Windows 和 macOS。下载安装之后,第一次启动会让你登录 10x Genomics 官网账号并激活许可证。这一步别嫌麻烦,账号注册是免费的,许可证也是免费的,只是需要联网验证一次。

打开.cloupe文件之后,你会看到一个散点图,每个点就是一个细胞,点的颜色代表当前选定的分组信息。左侧面板通常显示有哪些聚类、每个聚类的细胞数和占比;图下方可以切换 t-SNE 和 UMAP 两种降维方式。界面上方有一个明显的基因搜索框,输入基因名,图上的点会立刻变成按表达量着色的渐变图。

我记得第一次用的时候,最大的感受是“这地图真顺滑”。数万个点的散点图,缩放、拖拽、框选都非常流畅,几乎没有卡顿。这一点看起来简单,实际做可视化方案的人知道,能把几十万点的交互做到这个流畅度,技术底子是有的。

2.3 版本兼容:每次升级都容易翻车

这是 Loupe Browser 使用中最大的坑,没有之一。

.cloupe文件不是一个“永久格式”,它跟 Cell Ranger 的版本强绑定。如果你用 Cell Ranger 7.x 生成的文件,拿 Loupe Browser 5.x 去打开,大概率直接报错或者根本认不出来;反过来,新版 Loupe Browser 通常能打开旧版 Cell Ranger 生成的文件,但我个人遇到过 7.x 版本的 Loupe 打开 6.x 文件时,个别标注信息显示异常的情况。

我的经验是:版本匹配是第一优先级。用哪个版本的 Cell Ranger,就去 10x 官网查对应的 Loupe Browser 版本要求。不要贪新,不要嫌旧,匹配就好。特别是团队里有多个人的情况下,一定要让所有人用同一套版本组合,否则一个人能打开的文件,另外一个人打不开,沟通成本直接翻倍。

3. 高频功能逐个拆:聚类浏览、基因着色与差异表达

3.1 聚类图不只是看看:框选、拆分与导出

Loupe Browser 最基础的操作是查看聚类结果。左侧列表里的每一个 cluster,点一下就会在图上高亮;反过来,在图上点某个区域,也能反选到对应的细胞群。

我用的最多的是它的框选工具(lasso 和矩形框选)。当你在图上看某一片细胞独立成团,想单独看它是哪些细胞时,直接框出来,右侧会显示这个细胞群的细胞数量、样本来源、基因表达中位数等信息。这个过程不用理解代码,鼠标操作几十秒就能完成。

更进阶一点,你可以把框选出的细胞群导出。比如你发现某个 cluster 明显是双细胞(doublet),你可以把这些细胞选中,然后导出成一个子集文件,后续回到 Cell Ranger 或者 Seurat 里专门排查。这个功能我反复用过,在做质量控制时特别有用。

3.2 基因表达着色:快速定位 marker 的分布

基因搜索框是 Loupe 的灵魂功能。输入CD3D、CD14、MS4A1这类经典 marker,图上的细胞会立刻按基因表达量从低到高着色。你不需要等 R 代码跑完,就能直观看到哪一个 cluster 高表达 T 细胞 marker,哪一群是单核细胞,哪一群是 B 细胞。

这个能力在数据探索阶段几乎不可替代。我做新项目时,拿到 cloupe 文件的第一件事就是把十几二十个标准 marker 都搜一遍,截图存档。这个过程不仅帮我快速判断细胞类型,还能让我发现测序质量上的问题——如果本来应该只在某群细胞表达的基因到处都在表达,说明数据质量或者注释可能有问题。

更妙的是,你可以把多个基因加到一个基因集里,统一成“打分”展示,比如把所有 T 细胞 marker 做成一个 set,一步就能看到整个 T 细胞 compartment 的分布。这个功能在做细胞类型注释前非常有用。

3.3 一次能出图的差异表达,但要注意比较逻辑

Loupe 的差异表达功能是“一键式”的无代码操作。选中某个 cluster 或者一个自定义细胞群,点击差异表达分析,它会自动完成该细胞群与所有其他细胞群之间的比较,输出一个包含 log2 fold-change、p-value、FDR 的表格,还能直接在界面上按显著性排序查看。

方便是方便,这里有一个很重要的逻辑前提:它做的是“这个群 vs 其他所有细胞”,而不是“这个群 vs 另一个群”。如果你需要研究 cluster 3 和 cluster 7 之间的差异,那就不能直接一键解决。我的处理方式是分别导出 cluster 3 和 cluster 7 的差异表达列表,再用 Excel 或 R 手动取交集、算差值。虽然麻烦一点,但逻辑上更精确。

还有一个细节:差异表达结果的可靠性跟聚类粒度有关。如果你的 cluster 划分得太粗,一个 cluster 里面混了多种细胞类型,那比较出来的差异基因其实是多种细胞的混合信号,生物学解释起来会很尴尬。所以我一般会在确认聚类 resolution 合理之后,才去跑这个功能。

4. 一个具体场景:从肿瘤组织 T 细胞亚群到候选 marker 清单

4.1 案例设定与预期

假设我现在拿到一个肿瘤组织的单细胞转录组数据,已经跑完 Cell Ranger,打开了 cloupe 文件。我的目标是:找到与肿瘤浸润 T 细胞耗竭相关的候选 marker,并输出一份可用于后续验证的基因列表。这是一个非常典型的 Loupe 使用场景,因为整个流程不需要写代码,适合快速探索。

4.2 操作链路详解

第一步,我会先看整体聚类图。如果数据里 T 细胞很多,CD3D、CD3E 这些泛 T marker 的着色会集中在某一大片区域。如果分散在多个区域,说明细胞类型多,需要根据 marker 把免疫细胞分出来。

第二步,对 T 细胞区域做一个“基于表达量的细胞群划分”。Loupe 本身不擅长做全新的亚聚类,所以我通常会在 Seurat 里先做好 T 淋巴细胞的再聚类,生成结果后再用RunUMAP等步骤,最后把坐标信息导回到 Loupe 环境里继续看(或者直接在 Cell Ranger 环境里做分群)。如果你的研究设计不需要太复杂的再聚类,直接用 Loupe 的框选功能,把 T 细胞大群框出来,再结合经典 marker 判断亚群,也完全可以。

第三步,对选定的细胞群运行差异表达分析。比如我把鼠标点在耗竭 T 细胞特征明显的一块区域(高表达 PDCD1、CTLA4、LAG3),右键选择差异表达,与所有其他细胞比较。输出结果后按 log2 fold-change 排序,重点关注显著性排名靠前的基因。这些基因里通常会有已知的耗竭 marker,也可能会冒出一些你从未听过的基因——这些就有潜力成为后续实验的候选靶点。

第四步,把结果导出为 CSV。然后回到常规工作流,用 R 或者其他工具做通路富集、生存分析。Loupe 在这里扮演的角色是一个“初筛漏斗”,让你在大量基因里快速找出值得深挖的对象。这一步做完,你再去读文献或做实验,方向感会强很多。

4.3 导出结果并接入后续分析

Loupe 导出的差异表达列表,数据格式比较干净,可以直接用 Excel 打开,也可以直接 read 进 R。我自己习惯把导出的 CSV 保留原始字段,不手动改动,因为后续如果要复现或者溯源,原始文件是最可信的凭证。

另外,Loupe 里可以直接导出当前视图的图片。别小看这个功能,我很多次做组会汇报、写初步报告时,用的就是 Loupe 里导出的 UMAP 图和 marker 表达图,清晰度完全够用。如果你需要完全自定义的配色和排版,那就老老实实回到 ggplot2 或者 Python 里重新画,Loupe 在这里只是快速展示工具,不是出版级出图工具。

5. 和 Seurat/Scanpy 的关系:不是替代,是互补

5.1 编程工具为什么不能完全取代 Loupe

有人问我:“既然 Seurat 什么都能做,为什么还要用 Loupe?”这个问题我一开始也有,但用的时间越长越明白,两类工具解决的是不同层面的问题。

Seurat 和 Scanpy 的强项是数据分析流程的可定制性和可重复性。从 QC 到归一化、特征选择、降维、聚类、差异表达,全流程你都可以精细调控。但缺点也很明显:代码跑完了,结果以图表和数字形式呈现在终端或者 notebook 里,交互性有限。你没法用鼠标在散点图上圈一群细胞然后立即看它的 marker 表达——这在 Loupe 里是几秒钟的事。

在实际项目里,我通常是先让 Loupe 当“侦察兵”,快速看数据;发现值得深挖的问题后,再回到 Seurat 写代码做严谨的分析。这有点像先用手电筒照一圈房间,看清大概布局,再决定用什么样的工具去精细装修某一个角落。

5.2 Loupe 做不到的事:重新聚类、批次效应校正

Loupe Browser 再方便,它也只是一个可视化工具,不是一个完整的分析平台。

比如重新聚类,Loupe 只能展示已有的聚类结果,不能像 Seurat 那样调整 resolution 参数重新跑一遍聚类。如果我发现某个 cluster 明显是多个细胞亚型的混合,想把它单独提出来重新聚类,Loupe 本身做不到,我必须回到 Seurat 或者 Cell Ranger 的处理流程里操作。

再比如批次效应校正,这是单细胞分析里的核心问题。不同样本、不同批次测出的数据直接合并,往往会有明显的批次效应。Loupe 虽然能让你按样本着色,直观看到批次差异,但它不会帮你做 Harmony、CCA 这些校正计算。我只把它当做一个“侦察工具”来看批次问题的严重程度,真正的校正动作一定是在代码环境里完成的。

还有一个容易忽略的限制:Loupe 里做不了复杂的自定义分析,比如 inferCNV、拟时序分析、细胞通讯分析,这些都是编程环境的天下。所以我的原则是:能用代码解决的问题,不赖在 Loupe 里;需要用鼠标探索的问题,也别硬写代码。

5.3 我推荐的分析流水线组合

我现在跑一个新项目,工作流基本固定成这样的组合:

第一步,Cell Ranger 跑完 count 和 aggr,得到 cloupe 文件;第二步,打开 Loupe Browser 快速浏览所有样本的聚类、marker 表达和批次情况,记录初步印象,截图存档;第三步,进入 Seurat,做标准流程(质量过滤、归一化、高变基因、PCA、UMAP、聚类);第四步,把 Seurat 的分群和细胞注释结果导回 Loupe 环境,继续用交互式界面验证、筛选和展示;第五步,用编程工具做下游分析,不跟 Loupe 纠缠。

这套流程走下来,Loupe 和 Seurat 各司其职,互相补位。Loupe 负责让人“看懂数据”,Seurat 负责让分析“可复现”,两者都不多余。

6. 新手最容易翻车的几个细节

6.1 打不开文件、卡死、搜索不到基因

先说说最常见的“打不开文件”问题。除了前面提到的版本兼容,还有几个原因值得排查:文件路径中包含中文或空格,某些 Windows 环境下会因为路径解析问题导致软件无法识别;文件过大(尤其是多个样本合并后几个 GB 的 cloupe),旧电脑内存不够,打开后容易直接卡死。我的建议是尽量把文件放在纯英文路径下,并保证电脑至少有 16GB 内存,否则体验会非常难受。

“搜索不到基因”也是高频问题。Loupe 里的基因名是基于参考基因组注释的,如果你搜的是基因别名(比如某些物种里常见的历史命名),可能搜不到。这时候需要先确认你的基因名是不是参考基因组里标准的 symbol。还有一个小坑:如果你输入的是大小写不敏感的词,界面通常能匹配;但如果你混用了不同注释风格的基因 ID(比如把 Ensembl ID 当 symbol 输入),肯定搜不到。看清楚数据是哪个参考基因组注释出来的,再确定用哪一套基因命名。

6.2 注释与差异表达结果的可靠性边界

Loupe 的细胞注释功能,本质上就是把 cluster 标注成 Cell Type。但要注意,这个标注是你人工给的名字,软件本身并不知道这个 cluster 到底是什么。很多新手容易犯一个认知错误:以为 Loupe 标注完细胞类型,这个结论就是“正确的”了。不,它只是一个管理标签的方式,标签准不准确完全取决于你对 marker 的理解和对数据的判断。

差异表达的结果也一样,它是统计计算出来的,不保证生物学意义。一个基因在统计上显著差异表达,可能是真的生物学信号,也可能是批次效应、doublet 污染、测序深度不平衡造成的。我在 Loupe 里看到任何“有意思的基因”,最后都会回到 Seurat 里重新验证一遍,确认不是技术假象。这也是我用 Loupe 这么多年最大的心得:它帮你做判断的速度很快,但最终结论一定要用更严谨的方法复核。

6.3 我的几个个人使用习惯

最后分享几个我自己的固定操作,不一定适合所有人,但至少对我是有效的。

第一,每次打开 cloupe 文件,先设置好统一的调色板和视图参数,再截图存档。这样后面做对比时,不同样本的图看起来格式一致,不会出现一个图红一个图蓝对不上号的情况。

第二,多利用“基因集”功能。我会把常用的免疫细胞 marker(T 细胞、B 细胞、NK 细胞、单核细胞、树突状细胞)都建成长久的基因集,每次打开新数据,直接一键给这些细胞类型“上色”,效率比逐个搜基因高好几倍。

第三,养成分阶段导出记录的习惯。每次框选细胞群、做差异表达、或者导出子集,都把操作得到的数据命名清楚,不要全部叫 output.csv。Loupe 里操作很轻快,一不留神就会产生很多零散文件,命名混乱的后果在下一次用的时候会成倍找补回来。

第四,遇到不确定的 marker 表达模式,我会在 Loupe 里同时打开基因表达图和 feature 数据对比,而不是只看一张图就下结论。因为单看一张图,视觉上很容易被某些高表达细胞误导,多个视角交叉比对能有效减少误判。

Loupe Browser 这个工具,从功能上来讲不复杂,真正的门槛在于你怎么把它嵌进自己的分析流程里,怎么用它辅助而不是替代你的生物学判断。我的经验是:它会成为你从下机数据到科学发现路上,使用频率最高的软件之一。你越是愿意花时间去熟悉它,后续项目推进的效率就越高。

返回列表