4.3 实战三 | 10X | 未过滤的PBMC
刘小泽写于2020.7.19
1 前言
相信学习单细胞数据分析的大家对PBMC都不陌生,虽然不是相关背景,但Seurat的PBMC数据深入人心。PBMC全称是peripheral blood mononuclear cell ,外周血单核细胞。
我们这里用的数据集来自Zheng et al. 2017,并在10X Genomics官网也可以获取,数量比Seurat使用的的2700个细胞数据更大
2 数据准备
下载
当然也可以跳过这一步,自己下载好之后读入。这里只是学习一下另一种方法
library(BiocFileCache)
bfc <- BiocFileCache("raw_data", ask = FALSE)
raw.path <- bfcrpath(bfc, file.path("http://cf.10xgenomics.com/samples",
"cell-exp/2.1.0/pbmc4k/pbmc4k_raw_gene_bc_matrices.tar.gz"))
untar(raw.path, exdir=file.path(tempdir(), "pbmc4k"))
# 最后也就是得到这三个文件:barcodes.tsv genes.tsv matrix.mtx读取
library(DropletUtils)
fname <- file.path(tempdir(), "pbmc4k/raw_gene_bc_matrices/GRCh38")
sce.pbmc <- read10xCounts(fname, col.names=TRUE)
# 看这里的数量惊人,但是后面还需要过滤
sce.pbmc
# class: SingleCellExperiment
# dim: 33694 737280
# metadata(1): Samples
# assays(1): counts
# rownames(33694): ENSG00000243485
# ENSG00000237613 ... ENSG00000277475
# ENSG00000268674
# rowData names(2): ID Symbol
# colnames(737280): AAACCTGAGAAACCAT-1
# AAACCTGAGAAACCGC-1 ... TTTGTCATCTTTAGTC-1
# TTTGTCATCTTTCCTC-1
# colData names(2): Sample Barcode
# reducedDimNames(0):
# altExpNames(0):转换ID,添加染色体信息
3 质控
10X数据面临的一大问题就是空液滴,因此需要emptyDrops检验一下
数据备份
把unfiltered数据主要用在质控的探索上
这里过滤的条件不需要太严苛,只需要去除线粒体含量太高的细胞即可
成熟的mRNA会通过核孔来到细胞质。如果细胞遭到破坏,大量细胞质中mRNA流失,而线粒体体积比较大,流不出去,含量基本不变,最后导致细胞质中捕获的线粒体RNA占比升高
根据原来的数据,加上质控标准作图

再看下文库大小分别和线粒体含量的关系

4 归一化
也是使用预分群+去卷积计算size factor的方法
看看两种归一化方法的差异

5 找表达量高变化基因
既然有UMI,就可以用第三种方法【在之前 3.3 挑选高变化基因 的 2.3 考虑技术噪音中介绍过,如果没有spike-in】:可以考虑利用数据分布来表示技术噪音,例如只考虑技术噪音的话,UMI counts通常会呈现近似泊松分布

6 降维
看看保留了几个PC
7 聚类

8 找marker基因并解释结果
这次看看cluster 7的marker基因

再和其他clusters对比

其实最后还是考验的背景知识:根据cluster7中CD14、CD68、MNDA表达量升高,同时又检查了CD16基因下调,推测cluster7是单核细胞
最后更新于
这有帮助吗?