2.单细胞 RNA-seq:计数矩阵的生成

单细胞 RNA-seq 数据 - 计数矩阵的原始数据

根据所使用的文库制备方法,RNA序列(也称为读序列或标签)将从转录本的3端(或5端)(10X Genomics, cell -seq2, Drop-seq, inDrops)或全长转录本(Smart-seq)中获得。

image

图片来源: Papalexi E 和 Satija R. 探索免疫细胞异质性的单细胞 RNA 测序,Nature Reviews Immunology 2018 (https://doi.org/10.1038/nri.2017.76)

针对感兴趣的生物学问题选择不同的方法。下面列出了这些方法的优点:

  • 3'(或 5')端测序:
    • 通过使用特异性的分子标识符将生物学重复与扩增 (PCR) 重复区分开来进行更准确的量化
    • 测序能够获得更多细胞数,可以更好地识别细胞亚群类型
    • 每个细胞的测序成本低
    • 最佳的测序结果大于10000 个细胞
  • 全长测序:
    • 检测异构体水平中的表达差异
    • 鉴定等位基因特异性表达差异
    • 对较少数量的细胞进行更深入的测序
    • 非常适合细胞数量少的样品

3 '端测序与全长测序需要进行许多相同的分析步骤,但 3' 端测序来越受欢迎,在分析中包含更多步骤。因此,我们将详细分析来自这些 3' 端测序的数据,主要是基于液滴的方法(inDrops、Drop-seq、10X Genomics)。

3' 端reads(所有基于液滴的方法)

对于 scRNA-seq 数据的分析,了解每个reads中存在哪些信息以及我们如何在分析中使用它是很有帮助的。

对于3 '端测序方法来说,从同一转录本的不同分子中读取的信息,只会从转录本的3 '端读取,因此序列相同的可能性很大。然而,在文库制备过程中的PCR步骤也可以产生read 复制。为了确定一个reads是生物的还是技术上的重复,这些方法使用独特的分子标识符(UMIs)。

  • 与读出不同的UMI映射到相同的转录从推导不同的分子和生物是重复-每次读取应进行计数。
  • 具有相同 UMI 的读取源自相同的分子并且是技术重复 - UMI 应折叠以计为单个读取。
  • 在下图中,ACTB 的读数应折叠并计为单个读数,而 ARL1 的读数应计算每个读数。
  • 映射到相同转录本的不同UMIs的Reads来自不同的分子,是生物重复——每个Reads都应该被计数。
  • 具有相同UMI的读取来自于相同的分子,并且在技术上是重复的——这些UMI应该被折叠以算作一个单独的reads。
  • 在下图中,ACTB的reads应该被折叠并作为单个reads计算,而ARL1的reads应该分别计算。


    image

图片来源:从 Macosko EZ 等人修改。使用纳升液滴对单个细胞进行高度平行的全基因组表达分析,cell 2015 (https://doi.org/10.1016/j.cell.2015.05.002)*

所以我们需要跟踪 UMI,但是我们还需要什么信息来正确量化我们样本中每个细胞中每个基因的表达呢? 无论液滴方法是什么,在细胞水平上进行适当的定量都需要以下条件:

  • 样本索引:确定reads来自于哪个样本
    • 在文库准备期间添加 - 需要记录
  • 细胞barcode:确定reads源自哪个细胞
    • 每种文库制备方法都有一个在文库制备过程中使用的细胞条形码库
  • 唯一分子标识符 (UMI):确定reads来自于哪个转录本分子
    • UMI 将用于折叠 PCR 重复序列
  • 测序 read1: Read1 序列
  • 测序 read2: Read2 序列

例如,当使用 inDrops v3 文库制备方法时,以下表示如何在四次reads中获取所有信息:

image

图片来源: Sarah Boswell(https://scholar.harvard.edu/saboswell),HMS 单细胞测序核心主管

  • R1(61 bp read 1):read序列(红色顶部箭头)
  • R2(8 bp read索引 1 (i7)):细胞条形码 - 细胞read源自(紫色顶部箭头)
  • R3(8 bp read索引 2 (i5)):样本/文库索引 - 样本read源自(红色底部箭头)
  • R4(14 bp read 2):read 2 和剩余的细胞条形码和 UMI - 转录read源自(紫色底部箭头)

对于不同的基于液滴的 scRNA-seq 方法,scRNA-seq 的分析工作流程是相似的,但它们之间的 UMI、细胞 ID 和样本索引会有所不同。例如,下面是 10X 序列读取的示意图,其中索引、UMI 和条形码的放置方式不同:

image

图片来源: Sarah Boswell(https://scholar.harvard.edu/saboswell),HMS 单细胞测序核心主管*

单细胞 RNA-seq 工作流程

scRNA-seq 方法将确定如何从测序读数中解析条形码和 UMI。因此,尽管一些特定步骤会略有不同,但无论使用何种方法,整个工作流程通常都会遵循相同的步骤。一般工作流程如下图所示:

image

图片来源:医学博士 Luecken 和 FJ 的 Theis。当前单细胞 RNA-seq 分析的最佳实践:教程,Mol Syst Biol 2019(doi:https://doi.org/10.15252/msb.20188746)*

工作流程的步骤是:

  • 计数矩阵的生成(特定于方法的步骤):格式化reads、样本demultiplexing、映射和定量
  • 原始计数的质量控制:过滤劣质细胞
  • 过滤计数聚类:基于转录活性的相似性对细胞进行聚类(细胞类型 = 不同的聚类)
  • 标记识别和簇注释:识别每个簇的基因标记并注释已知的细胞类型簇
  • 下游步骤可选

无论进行何种分析,基于每个条件的单个样本得出的关于总体的结论都是不可信的。仍然需要生物学重复!也就是说,如果您想得出与总体相对应的结论,而不单是做单个样本。

计数矩阵的生成

我们首先讨论工作流程的第一部分,即从原始测序数据生成计数矩阵。我们将重点介绍基于液滴的方法使用的 3' 端测序,例如 inDrops、10X Genomics 和 Drop-seq。

image

测序后,测序设备将以BCL 或 FASTQ 格式输出原始测序数据或生成计数矩阵。如果reads是 BCL 格式,那么我们需要转换为 FASTQ 格式。有一个有用的命令行工具bcl2fastq可以轻松执行此转换。

注意:我们不会在工作流程的这一步进行多样本拆分。您可能对 6 个样本进行了测序,但所有样本的读数可能都存在于同一个 BCL 或 FASTQ 文件中。

对于许多 scRNA-seq 方法,从原始测序数据生成计数矩阵将经历类似的步骤。

image

alevin是一种命令行工具,用于估计对转录本 3' 端进行测序的 scRNA-seq 数据的表达。umi-toolszUMI是可以执行这些过程的附加工具。这些工具结合了 UMI 的折叠以校正放大偏差。此过程中的步骤包括:

  1. 格式化reads和过滤嘈杂的蜂窝barcode
  2. 多样本拆分
  3. 映射/伪映射到转录组
  4. 折叠 UMI 和reads的量化

如果使用 10X Genomics 文库制备方法,上述所有步骤将通过Cell Ranger 管道完成。

1. 格式化reads和过滤嘈杂的蜂窝barcode

可以使用 FASTQ 文件来解析细胞barcode、UMI 和样本barcode。对于基于液滴的方法,由于以下原因,许多细胞barcode将匹配少量reads(< 1000 次read):

  • 从濒死细胞中封装自由漂浮的 RNA
  • 表达很少基因的简单细胞(红细胞等)
  • 由于某种原因失败的细胞

这些多余的条形码需要在reads比对之前从序列数据中过滤掉。为了进行这种过滤,为每个细胞提取并保存“细胞条形码”和“分子条形码”。例如,如果使用“umis”工具,信息将添加到每次read的标题行,格式如下:

@HWI-ST808:130:H0B8YADXX:1:1101:2088:2222:CELL_GGTCCA:UMI_CCCT
AGGAAGATGGAGGAGAGAAGGCGGTGAAAGAGACCTGTAAAAAGCCACCGN
+
@@@DDBD>=AFCF+

文库制备方法中使用的已知细胞条形码应该是已知的,未知条形码将被丢弃,同时允许与已知细胞条形码的不匹配数量可接受。

2. 多样本拆分

如果是对多个样本测序,则该过程的下一步是对对样本进行拆分。这是此过程的一个步骤,不是由“umis”工具处理的,而是由“zUMI”完成的。我们需要解析reads以确定与每个细胞相关的样本barcode。

3. 映射/伪映射到 cDNAs

为了确定read源自哪个基因,reads使用传统 (STAR) 或轻量级方法 (Kallisto/RapMap) 进行比对。

4. 折叠 UMI 和 read量化

重复的 UMI 被折叠,并且只有唯一的 UMI 使用 Kallisto 或 featureCounts 等工具进行量化。结果输出是一个按基因计数矩阵的单元格:

image

图片来源:摘自 Lafzi 等人。教程:单细胞 RNA 测序研究的实验设计指南,Nature Protocols 2018 (https://doi.org/10.1038/s41596-018-0073-y)

矩阵中的每个值代表源自相应基因的细胞中的read数。使用计数矩阵,我们可以探索和过滤数据,只保留更高质量的细胞。

你可能感兴趣的:(2.单细胞 RNA-seq:计数矩阵的生成)