分享是一种态度
对应原版教程第5章http://bioconductor.org/books/release/OSCA/overview.html 本小节概述了从测序到数据分析的基本流程,让我们对scRNA-seq先有一个整体的印象。
a typical scRNA-seq analysis workflow
历经10年左右发展,单细胞测序技术目前有两大主流平台。分别是10X Genomics(Droplet-based)与Smart-seq2(Plate-based with reads),各有优劣。
From paper:实验步骤示意图
类似传统RNA-seq,测序得到的fastq文件,需要比对基因组、计数得到最终的表达矩阵才可以进行真正的下游数据分析。
CellRanger
,可以比较方便得到表达矩阵结果。(简单来说首先使用STAR比对,然后统计每个基因比对到多少个UMI,作为表达量)scPipe
,介绍如下(我暂时没用过,用过的朋友可以来说说咋样)A preprocessing pipeline for single cell RNA-seq data that starts from the fastq files and produces a gene count matrix with associated quality control information. It can process fastq data generated by CEL-seq, MARS-seq, Drop-seq, Chromium 10x and SMART-seq protocols.
对于scRNA-seq数据分析,包含最基本的5个步骤
BiocManager::install("package_name")
#数据包,提供很多示例scRNA-seq表达矩阵信息
library(scRNAseq)
#scRNA-seq分析工具包
library(scater)
##scRNA-seq分析工具包
library(scran)
library(scRNAseq)
sce <- MacoskoRetinaData() #直接为sce格式
# (1)Quality control.
library(scater)
is.mito <- grepl("^MT-", rownames(sce))
qcstats <- perCellQCMetrics(sce, subsets=list(Mito=is.mito))
filtered <- quickPerCellQC(qcstats, percent_subsets="subsets_Mito_percent")
sce <- sce[, !filtered$discard]
# (2)Normalization.
sce <- logNormCounts(sce)
# (3)Feature selection.
library(scran)
dec <- modelGeneVar(sce)
hvg <- getTopHVGs(dec, prop=0.1)
# (4)Dimensionality reduction.
set.seed(1234)
sce <- runPCA(sce, ncomponents=25, subset_row=hvg)
sce <- runUMAP(sce, dimred = 'PCA', external_neighbors=TRUE)
# (5)Clustering.
g <- buildSNNGraph(sce, use.dimred = 'PCA')
colLabels(sce) <- factor(igraph::cluster_louvain(g)$membership)
# (5)Visualization.分群可视化
plotUMAP(sce, colour_by="label")
下一节会学习下游分析的第一步,也就是质控过程中的若干问题。
往期回顾
如果你对单细胞转录组研究感兴趣,但又不知道如何入门,也许你可以关注一下下面的课程