前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >🤩 scRNA-seq | 吐血整理的单细胞入门教程(PCA的影响因素)(九)

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

作者头像
生信漫卷
发布2022-10-31 17:22:34
5570
发布2022-10-31 17:22:34
举报
文章被收录于专栏:R语言及实用科研软件

1写在前面

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

2用到的包

代码语言:javascript
复制
rm(list = ls())
library(tidyverse)
library(SingleCellExperiment)
library(scater)

3示例数据

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

代码语言:javascript
复制
load("umi_umiqc.Rdata")
umi.qc

4PCA的影响因素

4.1 sum

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

代码语言:javascript
复制
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

代码语言:javascript
复制
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

代码语言:javascript
复制
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的影响较大,我们在做之前需要去除批次效应。🫠


最后祝大家早日不卷!~


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信漫卷 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1写在前面
  • 2用到的包
  • 3示例数据
  • 4PCA的影响因素
    • 4.1 sum
      • 4.2 Detected genes
        • 4.3 Explanatory Variables
        相关产品与服务
        批量计算
        批量计算(BatchCompute,Batch)是为有大数据计算业务的企业、科研单位等提供高性价比且易用的计算服务。批量计算 Batch 可以根据用户提供的批处理规模,智能地管理作业和调动其所需的最佳资源。有了 Batch 的帮助,您可以将精力集中在如何分析和处理数据结果上。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档