单细胞转录组测序(scRNA-seq),10x Genomics Chromium平台无疑是推动技术普及的核心力量。然而,从测序仪产生的海量原始数据到能够揭示细胞异质性、发现新细胞亚群、重构发育轨迹的生物学洞见,中间横亘着一道关键的桥梁——生物信息学分析。而这座桥梁的基石,正是cellranger count
流程 。
cellranger count
是10x Genomics官方分析套件Cell Ranger的核心组件。它的使命看似简单,却至关重要:将测序仪输出的原始FASTQ文件,转化为一个结构化的、可量化的基因-细胞表达矩阵(gene-barcode matrix)。这个矩阵是所有下游高级分析(如使用Seurat或Scanpy进行降维、聚类、差异表达分析)的起点 。可以说,不深入理解
cellranger count
,就无法真正掌握单细胞数据分析的精髓,更无法对数据质量做出准确的判断。
本文的探索之旅
本文旨在成为一份关于cellranger count
的终极指南。我们将不再满足于将其视为一个简单的“黑箱”,而是要彻底解构其内部的运作机制。我们的旅程将遵循以下路径:
全局概览:首先,我们将从宏观视角了解
cellranger count
的工作流,包括它需要什么输入、如何运行以及会产生什么输出。深入“黑箱”:接着,我们将深入其内部,揭示三大核心算法——序列比对、细胞条形码(barcode)校正和细胞鉴定(cell calling)的神秘面纱。
质量控制金标准:然后,我们将学习如何像专家一样解读
web_summary.html
报告,掌握评估数据质量的艺术。高级参数与实战策略:最后,我们将探讨如何运用
--force-cells
、--expect-cells
和--include-introns
等高级参数,根据具体的实验场景优化分析流程。
通过这次探索,您将不仅学会如何运行cellranger count
,更能理解其每一步操作背后的原理,从而在单细胞研究的道路上走得更远、更稳。
第一部分:cellranger count
工作流:全局概览
在深入探索算法细节之前,我们首先需要建立一个清晰的全局观念:cellranger count
流程的输入、核心指令和输出分别是什么。
先决条件:必要的输入文件
运行cellranger count
需要准备两类核心输入文件,以及一些针对特殊实验的可选文件。
FASTQ文件
这是最基础的输入,即包含核苷酸序列及其测序质量得分的原始测序数据 。通常,这些文件由测序服务商提供,或者由用户使用
cellranger mkfastq
工具从测序仪的原始BCL(Base Call)文件转化而来 。FASTQ文件遵循特定的命名规则,例如
pbmc_1k_v3_S1_L001_R1_001.fastq.gz
。这个文件名包含了丰富的信息:
pbmc_1k_v3
: 样本名称(Sample Name)。S1
: 样本索引(Sample Index),对应样本表中的编号。L001
: 测序泳道(Lane),表示数据来自测序芯片的哪个泳道。R1
或R2
: 读长类型(Read Type)。在10x单细胞3'端测序中,R1通常包含细胞条形码(Cell Barcode)和UMI(Unique Molecular Identifier),而R2则是转录本的序列。
一个重要的提醒是,FASTQ文件是您实验的原始数据,一旦丢失将无法再生。因此,强烈建议对这些文件进行妥善的备份和归档 。
参考转录组(Reference Transcriptome)
如果说FASTQ文件是待解读的“密码”,那么参考转录组就是解读密码所用的“密码本” 。它是一个包含了某物种所有已知转录本序列的集合。
cellranger count
会将FASTQ中的读长(reads)与这个参考转录组进行比对,以确定每个读长来源于哪个基因。
10x Genomics官方提供了为人类(GRCh38)和小鼠(mm10)预先构建和优化的参考转录组包,可以直接下载使用 。对于其他物种,或者当您需要在参考序列中加入自定义序列(如报告基因GFP、CRISPR-Cas9等)时,可以使用
cellranger mkref
命令来构建自己的参考转录组 。我们将在第四部分详细介绍
mkref
的使用。
可选输入文件
对于更复杂的实验,例如CITE-seq(同时检测RNA和表面蛋白)或CRISPR筛选,还需要提供额外的配置文件 :
Libraries CSV (
--libraries
): 当一个样本包含多种文库类型时(如基因表达文库和Feature Barcode文库),此文件用于声明每个文库对应的FASTQ文件路径和类型。Feature Reference CSV (
--feature-ref
): 此文件定义了Feature Barcode文库中每个特征(如抗体、CRISPR gRNA)的序列、名称和ID。
核心指令:实战演练
准备好输入文件后,运行cellranger count
的核心指令非常直观。以下是一个标准命令的示例,并附有详细注释 :
Bash
cellranger count --id=PBMC_1k_v3 \
--transcriptome=/path/to/refdata-gex-GRCh38-2020-A \
--fastqs=/path/to/pbmc_1k_v3_fastqs \
--sample=pbmc_1k_v3 \
--localcores=16 \
--localmem=64
让我们逐一解析其中最重要的参数:
--id
: 为本次分析运行指定一个独一无二的ID。这个ID将作为输出文件夹的名称,便于管理 。--transcriptome
: 指向参考转录组文件夹的路径。这个文件夹是由cellranger mkref
生成或从10x官网下载的 。--fastqs
: 指向包含FASTQ文件的目录的路径 。--sample
: 指定要处理的样本名称前缀。Cell Ranger会根据这个前缀自动匹配--fastqs
目录中对应的FASTQ文件 。--localcores
和--localmem
: 分别用于指定分析过程中可使用的CPU核心数和内存大小(GB)。cellranger count
是一个计算密集型任务,通常无法在个人笔记本电脑上运行,需要具备足够计算资源(如至少8核CPU和64GB内存)的服务器或高性能计算(HPC)集群 。
解读结果:outs/
目录导航
运行成功后,Cell Ranger会在当前目录下创建一个以--id
命名的文件夹。所有核心的分析结果都存放在该文件夹下的outs/
子目录中 。对于初学者来说,面对众多输出文件可能会感到困惑。下表总结了最重要的几个文件及其用途。
表1:核心cellranger count
输出文件
整个Cell Ranger软件生态(包括mkfastq
, count
, aggr
等)被设计成一个模块化但高度整合的分析套件 。
cellranger count
在其中扮演着承上启下的核心角色,它上承经过mkfastq
解复用的FASTQ文件,下启所有依赖于定量表达矩阵的生物学分析。这种清晰的工作流划分,将一个复杂的分析过程分解为多个逻辑清晰、可验证的阶段。更重要的是,cellranger count
的输出(如BAM, H5, MEX)均采用生物信息学领域的标准格式 ,这并非偶然,而是为了确保其能与Seurat、Scanpy等海量的第三方分析工具无缝对接。这种开放性和兼容性,使其成为了单细胞分析领域的基石,而非一个孤立的工具。
第二部分:揭开“黑箱”:cellranger count
的核心算法
cellranger count
的强大之处在于其背后一系列经过精心设计和优化的算法。本节将深入其内部,详细解析从读长(read)到计数(count)的全过程,真正理解数据是如何被处理的。
第一步:读长预处理与序列比对
在将测序读长与参考转录组比对之前,Cell Ranger会进行关键的预处理步骤,以最大化比对的准确性和效率。
智能剪切(Trimming)
在10x文库构建过程中,cDNA分子的5'端会连接上一段模板转换引物(TSO),而3'端则是poly-A尾。在测序时,尤其是对于较短的RNA分子,测序读长可能会包含这些非模板序列。这些序列的存在会严重干扰比对软件的准确性。因此,Cell Ranger会自动从R2读长的5'端剪切掉TSO序列,并从3'端剪切掉poly-A序列。这一步极大地提升了有效比对率和计算效率 。在输出的BAM文件中,
ts:i
和pa:i
标签会记录被剪切掉的TSO和poly-A碱基数。
使用STAR进行剪接感知比对
预处理之后,Cell Ranger调用了生物信息学领域广为使用的STAR(Spliced Transcripts Alignment to a Reference)比对软件 。STAR能够识别剪接事件,即将跨越内含子的读长正确地比对到基因组上不连续的外显子区域。这是一个对于分析真核生物转录组至关重要的功能。
读长分类
比对完成后,依据基因注释GTF文件,Cell Ranger会将每一条读长精确地分类为exonic
(与外显子重叠超过50%)、intronic
(不属于外显子但与内含子重叠)或intergenic
(基因间区)。这个分类是后续定量,特别是决定是否包含内含子读长(--include-introns
参数)的机制基础 。
第二步:Barcode和UMI处理——确保数据高保真
单细胞测序的核心在于通过细胞条形码(Cell Barcode)区分不同细胞,并通过唯一分子标识(UMI)进行精确定量。然而,测序过程并非完美,这两个关键序列都可能出现错误。
挑战:测序错误与Barcode校正
一个典型的10x细胞条形码有16个碱基长。即使测序错误率很低,在数亿条读长中,也难免有部分Barcode序列会发生错误。如果不加校正,来自同一个细胞的RNA分子可能会被错误地归属到多个不同的细胞中,严重影响数据质量。
解决方案:基于“白名单”的概率校正算法
Cell Ranger采用了一种非常智能的算法来解决这个问题 :
“白名单”(Whitelist/Inclusion List): Cell Ranger内部包含一个“白名单”文件。这个文件预先存储了特定化学版本(如v2或v3)下所有可能产生的、理论上有效的细胞条形码序列。例如,v2化学的白名单约有73.7万个,而v3则有约300万个 。
汉明距离为1的搜索: 当Cell Ranger在测序数据中遇到一个不在白名单上的Barcode时,它不会立即丢弃,而是会在白名单中搜索所有与这个错误Barcode只有一个碱基差异(即汉明距离为1)的有效Barcode 。
质量分数的关键作用: 对于每一个找到的“候选”正确Barcode,算法会计算一个后验概率,即“观察到的错误Barcode是由这个候选正确Barcode在测序过程中发生单个碱基错误而产生的概率”。这个计算严重依赖于发生错误的那个碱基的Phred质量分数(Q-score)。如果错误位置的Q-score很低,说明测序仪对这个碱基的判断本就“不自信”,它极有可能是一个测序错误 。
执行校正: 算法会选择后验概率最高的那个候选Barcode作为校正目标。如果这个最高的概率值超过一个非常严格的阈值(0.975),那么这个错误的Barcode就会被成功“纠正”为白名单上的正确Barcode。在最终的BAM文件中,原始的、未校正的Barcode序列被保存在
CR
标签中,而校正后的Barcode序列则保存在CB
标签中,为数据溯源提供了完整的记录 。
UMI定量:消除PCR扩增偏好
在将读长成功归属到一个经过校正的细胞和一个特定的基因后,Cell Ranger会处理UMI。UMI是一段短随机序列(10-12bp),它与原始的mRNA分子一一对应。在文库扩增(PCR)过程中,一个原始mRNA分子会被复制成许多份,但它们都带有相同的UMI。Cell Ranger通过识别并合并具有相同细胞条形码、相同基因来源和相同UMI序列的所有读长,将它们只计数为“1”。这个过程被称为“UMI collapsing”或“deduplication”,它有效地消除了PCR扩增带来的定量偏差,确保最终表达矩阵中的每一个计数都代表一个来自原始细胞的、独一无二的mRNA分子 。
第三步:细胞鉴定——在噪音中分辨信号的艺术
这是cellranger count
流程中最具挑战性也最智能的一步。并非所有被包裹在凝胶微滴(GEM)中的Barcode都对应一个真实的、完整的细胞。
挑战:无处不在的“环境RNA”
在制备单细胞悬液的过程中,不可避免地会有一些细胞破裂,释放出其内部的RNA到溶液中。这些“环境RNA”(ambient RNA)会随着溶液被一同包裹进凝胶微滴中,包括那些没有捕获到完整细胞的“空包”微滴。因此,这些空包微滴也会产生测序信号,形成背景噪音。如果一个真实的细胞本身RNA含量就很低(例如某些免疫细胞),它的信号可能就与这些富含环境RNA的空包微滴相差无几,给区分带来了巨大困难 。
现代两步细胞鉴定算法(Cell Ranger v3及以后版本)
为了精准地从背景噪音中识别出真正的细胞,Cell Ranger采用了一种复杂的两步算法,其核心思想借鉴了著名的EmptyDrops方法 。
第一步:识别高置信度的“种子”细胞 算法首先会识别出一批“毫无疑问”是真实细胞的Barcode。它会根据用户提供的
--expect-cells
参数(或自动估算)的值Nexpect,找到所有Barcode中UMI总数排在前$N_{expect}$的那些,并计算出其中第99百分位的UMI数,记为$m$。然后,算法设定一个初始阈值m/10。任何UMI总数超过这个阈值的Barcode,都会被首先认定为高置信度的细胞 。这一步能够快速、准确地锁定那些RNA含量高、信号强的细胞。第二步:利用背景模型“拯救”低RNA含量细胞 这是整个算法的精髓所在,它旨在从剩余的、未被第一步选中的Barcode中,拯救出那些真实的、但RNA含量较低的细胞 。
建立环境RNA背景模型: 算法会选择一个UMI数极低的Barcode区间(例如,在标准3'端GEX实验中,通常是UMI数排名在45,000到90,000之间的Barcode)。这些Barcode被假定绝大多数来自“空包”微滴。算法会将这些Barcode的基因表达数据汇总起来,构建一个能够代表“环境RNA”的平均表达谱(ambient RNA profile)。
进行统计检验: 接着,算法会遍历所有在第一步中未被选为细胞的Barcode。对于每一个这样的Barcode,算法会将其基因表达谱与之前建立的环境RNA背景模型进行比较,并进行统计检验,以判断它的表达谱是否显著偏离背景模型 。
最终鉴定: 如果一个Barcode的表达谱与背景模型存在统计学上的显著差异(例如,它特异性地高表达了某些背景中没有的基因),那么即使它的总UMI数很低,算法也会将其“拯救”出来,鉴定为一个真实的细胞。这一步对于准确识别那些RNA含量虽低但具有独特转录特征的细胞亚群至关重要 。
Cell Ranger算法的演进体现了单细胞分析领域的成熟。早期的细胞鉴定方法依赖于在Barcode排序图上寻找一个经验性的“拐点”(knee point),这是一种启发式方法,不够精确 。而现行的两步法,是基于严格统计模型的推断,能够更科学、更灵敏地区分信号和噪音。同样,Barcode校正也不再是简单的序列匹配,而是融入了测序质量分数的概率模型。这种从经验主义到概率模型的转变,标志着该领域正在通过更精细地建模来应对和克服各种技术误差。
此外,BAM文件作为最底层的输出,其价值远超一个简单的比对记录。它是一个完整的“审计追踪”档案。BAM标签中不仅记录了Barcode校正前后的序列(CR
和CB
标签),还记录了TSO和poly-A的剪切信息(
ts:i
和pa:i
标签)。这意味着,对于任何一个有疑问的读长,高级用户都可以追溯到BAM文件,精确地审查它被处理的每一步决策,这为分析提供了终极的透明度和可重复性。
第三部分:质量控制的金标准:精通web_summary.html
报告
如果说cellranger count
的算法是引擎,那么web_summary.html
就是这台引擎的仪表盘。学会解读这份交互式报告,是评估实验成败、判断数据质量、指导后续分析的第一步,也是最重要的一步 。
web_summary.html
:您的首选诊断工具
在cellranger count
运行结束后,您应该第一时间打开outs/
目录下的web_summary.html
文件。这份报告的顶部会以醒目的方式高亮显示关键指标,并对可能存在问题的指标给出警告(Alerts)。
“Summary”选项卡:成功的关键指标
“Summary”选项卡提供了关于测序、比对和细胞鉴定的宏观质量统计。
顶层核心指标
报告最上方会展示三个最核心的数字:“Estimated Number of Cells”(预估细胞数)、“Mean Reads per Cell”(每个细胞的平均读长数)和“Median Genes per Cell”(每个细胞检测到的基因数中位数)。这三个数字让你能迅速了解本次实验的规模和测序深度 。
详细指标仪表盘
报告中“Sequencing”、“Mapping”和“Cells”三个模块包含了更详细的QC指标。您可以点击每个模块标题旁的“?”图标,获取每个指标的官方解释 。下表总结了最重要的几个QC指标及其解读方法。
表2:web_summary.html
关键QC指标解读与参考范围
Barcode Rank Plot:最重要的质控图谱
这张图,通常被称为“Barcode排序图”或“膝盖图”(Knee Plot),是web_summary.html
中信息量最大、最重要的图表。
图谱的构成: 其Y轴代表与每个细胞条形码相关联的UMI总数(对数坐标),X轴则是按UMI数从高到低排序的细胞条形码的排名(对数坐标)。
“悬崖和膝盖”的经典形态: 一个高质量的样本,其Barcode Rank Plot会呈现出一个非常典型的形态:一条陡峭的“悬崖”(cliff)紧接着一个平缓的“膝盖”(knee)。这个形态清晰地展示了高UMI数的真实细胞群体(悬崖部分)与低UMI数的空包微滴背景(膝盖部分)之间的巨大分野。悬崖与膝盖的转折点,大致就是细胞鉴定算法区分细胞与背景的阈值所在。
解读异常形态:
样本受损(如细胞裂解/堵塞): 如果曲线呈现为一个平缓的、滚动的弧形,没有任何明显的“悬崖”和“膝盖”,这通常预示着灾难性的问题,如大规模细胞裂解导致极高的环境RNA污染,或是实验操作失败(如“湿润失败”)导致没有形成有效的单细胞微滴。在这种情况下,算法无法有效区分细胞和背景,预估的细胞数也是不可信的 。
异质性样本: 如果样本中包含了多种大小或RNA含量差异巨大的细胞类型(例如,大的神经元和小的胶质细胞混合),图像可能会呈现出“双峰”或多级的台阶状,即出现多个悬崖和膝盖。这是正常的生物学现象,通常算法也能够很好地处理 。
交互式探索: Cell Ranger v8.0之后的一个重要更新是,当您将鼠标悬停在图表的不同区域时,会显示该区域内被鉴定为细胞的Barcode百分比 。这个功能让您能直观地看到细胞鉴定算法在不同UMI区间的决策过程。
Barcode Rank Plot不仅仅是一张QC图,它是细胞鉴定算法成功与否的直接可视化呈现。图中的“悬崖”部分,对应着算法第一步识别出的高UMI数、高置信度的细胞群体。而“膝盖”及以上区域,则是算法第二步(EmptyDrops-like方法)发挥作用的主战场,它在这里奋力从背景噪音中“拯救”低RNA含量的细胞。一个陡峭的悬崖意味着信号与噪音界限分明,算法的第一步和第二步都能轻松完成任务。而一条平滑的曲线则意味着环境RNA污染过于严重,噪音淹没了信号,导致算法的统计模型失效。因此,解读这张图,就是在理解您的数据特征与核心细胞鉴定算法之间是如何相互作用的。
“Gene Expression”选项卡:初探生物学结构
这个选项卡展示了Cell Ranger自动执行的初步下游分析结果。
t-SNE / UMAP 降维聚类图
这些图通过降维算法将高维的基因表达数据投影到二维平面上,让我们能直观地观察细胞间的相似性 。从Cell Ranger v9.0开始,默认使用UMAP投影代替t-SNE 。
按UMI数着色: 这张图通常能反映细胞的RNA含量,往往与细胞大小或代谢活性相关。颜色更红(或更深)的点代表其UMI总数更高 。
按聚类结果着色: 这张图展示了Cell Ranger基于基因表达相似性自动聚类的结果。它能给出样本中可能存在多少种细胞亚群的初步印象。如果所有点都混杂成一个“毛球”,没有任何结构,可能预示着实验失败或样本类型单一;而如果出现多个界限分明的细胞簇,则说明成功捕获了样本的生物学异质性 。
测序饱和度与基因中位数图
测序饱和度(Sequencing Saturation): 这个指标评估了当前测序深度捕获到了文库复杂度的多少。理想情况下,这个值应该较高(如>70-80%)。如果值很低(如<50%),则意味着文库中还有大量独特的RNA分子没有被测到,增加测序深度可能会发现更多的基因和UMI 。
每个细胞的基因中位数(Median Genes per Cell): 这张图展示了随着测序深度的增加,每个细胞能检测到的基因数中位数的变化情况。理想情况下,曲线的尾部应该开始趋于平缓,表明继续增加测序深度对于发现新基因的边际效益正在递减 。
第四部分:高级参数与实战策略
掌握cellranger count
的默认用法是基础,而学会使用高级参数,则是根据具体的实验设计和数据质量,量身定制分析策略,从而将软件的性能发挥到极致。
--force-cells
vs. --expect-cells
:手动干预的艺术
在细胞鉴定不符合预期时,这两个参数是用户进行干预的最主要手段。但它们的机制和适用场景截然不同。
机制上的差异
--expect-cells
: 这个参数是向细胞鉴定算法提供一个“建议”或“提示”。它会影响算法第一步中用于计算初始UMI阈值的预估细胞数Nexpect。但它
不会跳过算法的第二步,即基于背景模型的统计检验过程仍然会运行。它是在“指导”算法,而非“命令”算法。
--force-cells
: 这是一个“强制命令”。它会完全绕过(bypass)整个两步细胞鉴定算法。Cell Ranger会简单地选取数据中UMI总数排在前N个的Barcode,并强制将它们全部鉴定为细胞,其中N就是您提供给--force-cells
的数值 。这是一个基于计数的硬性阈值,不涉及任何统计推断。
何时以及如何使用
默认(自动估算): 对于大多数标准实验,Cell Ranger的自动估算机制工作得相当好,无需手动干预 。
使用
--expect-cells
: 当您对回收的细胞数有一个比较准确的预估(例如,通过细胞计数仪获得),且该预估值与Cell Ranger自动报告的值有较大出入时,可以尝试使用此参数。前提是,Barcode Rank Plot的整体形态看起来仍然是健康的(有可见的悬崖和膝盖)。这相当于给算法一个更合理的起点。谨慎使用
--force-cells
: 这是一个功能强大的“终极手段”,主要用于“拯救”那些因数据质量问题导致算法失效的实验。使用它的最主要依据是:Barcode Rank Plot的形态与算法的鉴定结果严重不符。例如,如果Barcode Rank Plot上清晰地显示在约5000个细胞处有一个陡峭的悬崖,但Cell Ranger报告只鉴定了1000个细胞,那么使用
--force-cells=5000
就是非常合理的。此外,对于某些特定的高通量(HT)或细胞复用(Cell Multiplexing)实验,官方文档也指出可能会出现细胞数被低估的情况,并建议使用--force-cells
来获得预期的细胞数 。一个重要的技巧是,您无需从头重新运行整个
cellranger count
流程,而是可以使用cellranger reanalyze
命令,它只重新进行细胞鉴定和下游分析,大大节省了时间 。
--include-introns
:解锁细胞核数据的钥匙
这个参数的正确使用,直接关系到单细胞核测序(snRNA-seq)分析的成败。
生物学原理
细胞核 vs. 全细胞: snRNA-seq捕获的是细胞核,而细胞核是基因转录和RNA剪接发生的主要场所。因此,细胞核中富含大量尚未完成剪接的前体mRNA(pre-mRNA),这些分子仍然包含大量的内含子(introns)。与此相对,常规的scRNA-seq捕获的是完整的细胞,其RNA主要来自细胞质,这些RNA大多是已经完成剪接、去除了内含子的成熟mRNA。
影响: 在分析snRNA-seq数据时,如果忽略了比对到内含子区域的读长,就相当于丢弃了高达20-40%的有效测序数据 。而将这些内含子读长包含进来进行定量,可以极大地增加每个细胞核检测到的UMI数和基因数,从而显著提升下游统计分析(如差异表达、细胞类型鉴定)的灵敏度和功效 。
Cell Ranger v7.0以后的新默认设置
鉴于snRNA-seq技术的日益普及及其对内含子数据的依赖,10x Genomics做出了一个至关重要的更新:从Cell Ranger v7.0版本开始,--include-introns
已成为默认行为。换言之,现在运行
cellranger count
时,它会自动计算内含子读长。因此,这个参数现在的实际用途变成了在特定情况下关闭内含子计数(例如,使用--include-introns=false
),而不是开启它。这对于分析历史数据或有特殊需求的用户来说是一个需要注意的重大变化。
cellranger mkref
:构建您自己的“密码本”
虽然10x官方提供了高质量的人鼠参考转录组,但在很多情况下,我们需要构建自己的参考序列。
为何以及何时需要
最常见的场景包括:为官方未提供参考序列的非模式生物(如斑马鱼、果蝇、植物等)进行分析;或者,在现有的人鼠参考序列中加入自定义基因序列,例如用于追踪的荧光蛋白(GFP, RFP)、基因编辑工具(Cas9)或CRISPR筛选文库中的gRNA靶序列等 。
所需输入
构建参考转录组需要两个核心文件:基因组序列 FASTA 文件和基因注释 GTF 文件 。至关重要的是,这两个文件必须来自同一来源和版本(例如,都来自Ensembl的同一发布版本),以确保FASTA中的染色体/contig名称与GTF文件中的名称完全一致 。
核心指令与工作原理
基本命令非常简单:cellranger mkref --genome=<自定义基因组名称> --fasta=<输入.fa> --genes=<输入.gtf>
。
mkref
的工作远不止是复制文件。它会执行一系列关键的格式化和索引操作,包括:
过滤GTF文件: 它会解析GTF文件,并根据STAR和Cell Ranger的要求进行过滤。例如,只有特征类型(feature type)被标记为'exon'的注释才会被用于构建转录组模型 。
构建STAR索引: 它会使用STAR软件为FASTA基因组序列创建一个高效的索引。正是这个索引,使得
cellranger count
在后续比对数亿条读长时能够快速完成 。
最终,mkref
会生成一个特殊格式的文件夹,这个文件夹才是cellranger count
中--transcriptome
参数真正需要的输入。
这些高级参数的存在,是连接通用分析软件与具体、情境感知的科学研究之间的桥梁。--force-cells
的存在承认了任何算法都有其局限性,有时研究者基于数据形态的直观判断和先验知识比自动化流程更可靠。--include-introns
参数及其默认值的演变,则直接反映了生物学样本制备技术(snRNA-seq的兴起)对生物信息学分析流程提出的新要求。这些参数并非随意的开关,而是让分析与实验的生物学现实保持一致的关键工具。
本文系统地解构了cellranger count
的完整流程、核心算法、质量控制和高级应用。为了将这些知识转化为您的实践能力,这里提供一份可操作的清单,指导您完成一次稳健、可靠的单细胞数据分析。
遵循这份清单,您将能够更有信心地驾驭cellranger count
,为您的单细胞研究项目奠定一个坚实可靠的数据基础。