单细胞测序技术
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单细胞测序技术相关的知识,希望对你有一定的参考价值。
参考技术A 单细胞测序的知识
系统学习单细胞转录组测序scRNA-Seq(一)
单细胞测序方法包括多种,区别在于两方面:定量方法,tag标签或全长;捕获策略,微孔microwell-,微液流microfluidic-,微滴droplet-。
微流控平台
主要包括顶部的微孔装置和底部的微流控通道。微孔大小可根据需要改变,当捕获到细胞后,翻转装置,能继续培养细胞系。
视频链接
建库过程包括:裂解细胞,游离RNA与附有BC、UMI及接头序列的磁珠连接在引物作用下完成cDNA第一链合成,而后cDNA第二链合成,最后扩增。测序方法通常是Illumina Hiseq技术。
因为有BC(Bead Code)序列,在后期定量时就能够区分该序列属于哪个细胞,从而获得单个细胞文库的测序定量结果。
目前有两种定量方法,基于tag和基于全长。前者对3\'端RNA序列测序,通过UMI定量序列,因而对低丰度RNA仍获得比较好的定量结果,但是对分析isoform并不友好;后者获得一致的read 序列,通过序列覆盖度定量,此方法对高表达RNA定量准确性更好。
Smart-seq2 method
UMI method
micro-well
sci-RNA-seq3
单细胞测序的两个主要难题是,细胞分选及细胞表达文库构建。细胞分选可依据细胞大小、细胞自身电荷属性、细胞与抗体特异性结合等。得到单个细胞即对其打上标签,而后将细胞裂解,根据需要以tag或全长方式构建文库进行测序。
单细胞测序分析: Seurat 使用教程
参考技术A Peripheral Blood Mononuclear Cells (PBMC) 是 10X Genomics dataset page 提供的一个数据,包含2700个单细胞,出自Illumina NextSeq 500平台。PBMCs是来自健康供体具有相对少量RNA(around 1pg RNA/cell)的原代细胞。在Illumina NextSeq 500平台,检测到2700个单细胞,每个细胞获得69000 reads。
matrix.mtx:matrix.mtx 是 MatrixMarket格式文件;更多内容见: http://math.nist.gov/MatrixMarket/formats.html
##3.1 Read10X()函数可以自动读入和解析数据。
#查看每个细胞有多少基因被检测到
##3.2 使用pbmc数据初始化Seurat对象
这部分是基于数据质控方法,标准化和检测到的变化基因对数据进行筛选。
##4.1 对细胞的质控
可以参考文章: Classification of low quality cells from single-cell RNA-seq data
#线粒体基因占比计算
#画图查看基因数目, UMI数目, 线粒体基因占比
#查看基因数目, 线粒体基因占比与UMI数目的关系
#质控
##4.2 数据标准化
默认使用数据标准化方法是 LogNormalize , 每个细胞总的表达量都标准化到10000,然后log取对数;结果存放于 pbmc[["RNA"]]@data 。
#标准化前,每个细胞总的表达量
#标准化后,每个细胞总的表达量
##4.3 变化基因鉴定
鉴定在细胞间表达高度变化的基因,后续研究需要集中于这部分基因。Seurat内置的FindVariableFeatures()函数,首先计算每一个基因的均值和方差,并且直接模拟其关系。默认返回2000个基因。
##4.4 数据缩放
线性转换缩放数据,ScaleData()函数可以实现此功能。
最终每个基因均值为0,方差为1。
结果存放于 pbmc[["RNA"]]@scale.data 。
设置参数features是因为ScaleData默认处理前面鉴定的差异基因。这一步怎么做都不会影响到后续pca和聚类,但是会影响做热图。
移除影响方差的因素
##5.1 PCA
对缩放后的数据进行PCA分析,默认使用前面鉴定表达变化大的基因。使用features参数可以重新定义数据集。
VizDimReduction , DimPlot , 和 DimHeatmap 可以从基因或细胞角度可视化pca结果
#查看对每个主成分影响比较大的基因集
#可视化对每个主成分影响比较大的基因集
两个主成分的展示
DimHeatmap绘制基于单个主成分的热图,细胞和基因的排序都是基于他们的主成分分数。对于数据异质性的探索是很有帮助的,可以帮助用户选择用于下游分析的主成分维度。
展示多个主成分
##5.1 数据维度
为了避免单个基因影响,Seurat聚类细胞时使用pca结果。首先需要确定的是使用多少个主成分用于后续分析。常用有两种方法,一种是基于零分布的统计检验方法,这种方法耗时且可能不会返回明确结果。另一种是主成分分析常用的启发式评估。
在JackStraw()函数中, 使用基于零分布的置换检验方法。随机抽取一部分基因(默认1%)然后进行pca分析得到pca分数,将这部分基因的pca分数与先前计算的pca分数进行比较得到显著性p-Value,。根据主成分(pc)所包含基因的p-value进行判断选择主成分。最终的结果是每个基因与每个主成分的关联的p-Value。保留下来的主成分是那些富集小的p-Value基因的主成分。
处理大数据时会花费大量时间;ElbowPlot()内置了一些其它的方法可以减少运行时间。
JackStrawPlot()函数提供可视化方法,用于比较每一个主成分的p-value的分布,虚线是均匀分布;显著的主成分富集有小p-Value基因,实线位于虚线左上方。下图表明保留10个pca主成分用于后续分析是比较合理的。
启发式评估方法生成一个Elbow plot图。在图中展示了每个主成分对数据方差的解释情况(百分比表示),并进行排序。根据自己需要选择主成分,图中发现第9个主成分是一个拐点,后续的主成分(PC)变化都不大了。
注意:鉴别数据的真实维度不是件容易的事情;除了上面两种方法,Serat官当文档还建议将主成分(数据异质性的相关来源有关)与GSEA分析相结合。Dendritic cell 和 NK aficionados可能识别的基因与主成分 12 和 13相关,定义了罕见的免疫亚群 (i.e. MZB1 is a marker for plasmacytoid DCs)。如果不是事先知道的情况下,很难发现这些问题。
Serat官当文档因此鼓励用户使用不同数量的PC(10、15,甚至50)重复下游分析。其实也将观察到的,结果通常没有显著差异。因此,在选择此参数时,可以尽量选大一点的维度,维度太小的话对结果会产生不好的影响。
Seurat v3应用基于图形的聚类方法,例如KNN方法。具有相似基因表达模式的细胞之间绘制边缘,然后将他们划分为一个内联群体。
在PhenoGraph中,首先基于pca维度中(先前计算的pca数据)计算欧式距离(the euclidean distance),然后根据两个细胞在局部的重合情况(Jaccard 相似系数)优化两个细胞之间的边缘权值。此步骤内置于FindNeighbors函数,输入时先前确定的pc数据。
为了聚类细胞,接下来应用模块化优化技术迭代将细胞聚集在一起。(the Louvain algorithm (default) or SLM [SLM, Blondel et al., Journal of Statistical Mechanics]),FindClusters函数实现这一功能,其中需要注意resolution参数,该参数设置下游聚类分析的“granularity”,更大的resolution会导致跟多的细胞类群。3000左右的细胞量,设置resolution为0.4-1.2是比较合适的。细胞数据集越大,需要更大的resolution参数, 会获得更多的细胞聚类。
查看细胞属于那个类群可以使用函数Idents。
Seurat提供了一些非线性降维度分析的方法,如tSNE和UMAP,以可视化和探索这些数据集;这一步使用的数据建议与聚类分析使用的pc维度一致。
#画图展示
此时可以保存数据,方便下次直接导入数据修改图形。
Seurat可以通过差异表达分析寻找不同细胞类群的标记基因。FindMarkers函数可以进行此操作,但是默认寻找单个类群(参数ident.1)与其他所有类群阳性和阴性标记基因。FindAllMarkers函数会自动寻找每个类群和其他每个类群之间的标记基因。
min.pct参数:设定在两个细胞群中任何一个被检测到的百分比,通过此设定不检测很少表达基因来缩短程序运行时间。默认0.1
thresh.test参数:设定在两个细胞群中基因差异表达量。可以设置为0 ,程序运行时间会更长。
max.cells.per.ident参数:每个类群细胞抽样设置;也可以缩短程序运行时间。
Seurat可以通过参数test.use设定检验差异表达的方法(详情见 DE vignett )。
Seurat有多种方法可视化标记基因的方法
DoHeatmap为指定的细胞和基因花表达热图。每个类群默认展示top 20标记基因。
根据已知细胞类型与基因标记的对应关系,可以为细胞类群找到对应的细胞类型。
参考:
Seurat - Guided Clustering Tutorial, Compiled: April 17, 2020
Getting started with Seurat
以上是关于单细胞测序技术的主要内容,如果未能解决你的问题,请参考以下文章