jamesbang

V1

2022/10/11阅读:15主题:雁栖湖

🤩 scRNA-seq | 吐血整理的单细胞入门教程(PCA的影响因素)(九)

1写在前面

有小伙伴问什么是PCA🧐,我们这期简单介绍一下PCA概念,以及影响因素。👇
PCAPrincipal component analysis (主成分分析),是考察多个变量间相关性的一种多元统计方法,研究如何通过少数几个主成分来揭示多个变量间的内部结构,即从原始变量中导出少数几个主成分,使它们尽可能多地保留原始变量的信息,将原来n个指标作线性非线性组合,作为新的综合指标。🥰

2用到的包

rm(list = ls())
library(tidyverse)
library(SingleCellExperiment)
library(scater)

3示例数据

这里我们用一下之前介绍的counts文件和annotation文件,然后通过SingleCellExperiment创建SingleCellExperiment格式的文件,并且经过初步过滤ID转换等。

load("umi_umiqc.Rdata")
umi.qc

4PCA的影响因素

4.1 sum

我们可以利用PCA来探索不同因素PCA的影响。这里我们看一下sum

umi.qc <- runPCA(umi.qc, exprs_values = "logcounts_raw")
dim(reducedDim(umi.qc, "PCA"))
plotPCA(umi.qc, colour_by = "batch", size_by = "sum", shape_by = "individual")

4.2 Detected genes

这里我们可以看到总UMI数可以解释86%PC1

logcounts(umi.qc) <- assay(umi.qc, "logcounts_raw")
getExplanatoryPCs(umi.qc,variables = "sum")
plotExplanatoryPCs(umi.qc,variables = "sum")

4.3 Explanatory Variables

这里我们用scater包的plotExplanatoryVariables函数计算一下可能的影响因素(variables)的密度图,实际上这里先做了一个线性回归拟合,然后做density plot

plotExplanatoryVariables(umi.qc,exprs_values = "logcounts_raw",                         variables = c("detected","sum","batch",                                       "individual","altexps_ERCC_percent","subsets_Mito_percent"))

从这个图可以看出,detected genesnumber of counts对许多基因有很大的解释力,因此这些变量是在normalisation下游分析的时候考虑到。
Note! 这里Batch的解释力超过了individual的,说明batch effetPCA的影响较大,我们在做之前需要去除批次效应。🫠


最后祝大家早日不卷!~

需要示例数据的小伙伴,在公众号回复scRNAseq获取吧!

点个在看吧各位~ ✐.ɴɪᴄᴇ ᴅᴀʏ 〰

分类:

后端

标签:

后端

作者介绍

jamesbang
V1

wx🔍: Grassssss 卷起来了