dxy logo
首页丁香园病例库全部版块
搜索
登录

单细胞04.JackStraw跟稻草人有啥关系?

发布于 04-10 · 浏览 418 · IP 浙江浙江

在单细胞数据分析中,JackStraw 是一种用于评估主成分分析(PCA)结果可靠性的统计方法,主要用于确定哪些主成分(PCs)具有显著的生物学意义,而不是随机噪声。因为并非所有主成分都包含有意义的生物学信息,有些可能是由技术噪声或随机变异引起的。JackStraw通过随机置换(permutation)方法,生成一个“随机背景”,然后将实际数据的主成分与随机背景进行比较,从而判断哪些主成分是显著的。同时,通过JackStraw分析可以筛选出具有统计学显著性的主成分,用于后续的降维或差异表达分析。此外,避免将噪声或无关变异误认为是生物学信号,从而提高下游分析的准确性。


img


JackStraw的名字源于英语中的“Jack Straw”,即“稻草人”。稻草人通常是一个象征性的、无实质内容的形象,用于吸引注意力或分散注意力。在JackStraw方法中,随机置换生成的数据类似于“稻草人”,代表无意义背景噪声。通过将实际数据与这些“稻草人”比较,可以区分出哪些主成分是真实的生物学信号,哪些是随机噪声。

JackStraw Plot 的结构

  1. X轴:实际观测到的p值(经验的),代表有意义的主成分。
  2. Y轴:通过生成的1000个随机数,模拟随机情况下的理论 p 值,代表噪声的主成分。
  3. 虚线:通常表示显著性阈值(如p=0.05)。

在实际数据分析中,JackStrawPlot与ElbowPlot结合分析,确定主成分的维度数。


############----04.数据降维,PCA+UMAP/TSNE-------##############

rm(list = ls())

gc()

getwd()


library(Seurat)


load(file = "day02_sce_data.Rdata")


pbmc = FindNeighbors(pbmc, dims = 1:10)

pbmc = FindClusters(pbmc, resolution = 0.5)


###先用PCA线性降维

pbmc = RunPCA(pbmc, features = VariableFeatures(object = pbmc))


#数据可视化方法有VizDimReduction(), DimPlot(), and DimHeatmap()

VizDimLoadings(pbmc, dims = 1:2, reduction = "pca")

DimPlot(pbmc, reduction = "pca")

DimHeatmap(pbmc, dims = 1:9, cells = 500, balanced = TRUE) #信息更多


##维度计算

pbmc = JackStraw(pbmc, num.replicate = 100) #时间较长

pbmc = ScoreJackStraw(pbmc, dims = 1:10)


#选择p值变化最显著的维度

JackStrawPlot(pbmc, dims = 1:20)

JackStrawPlot(pbmc, dims = 1:15)

JackStrawPlot(pbmc, dims = 1:10)


#确定合适的Elbow值

ElbowPlot(pbmc)


###使用UMAP及进行非线性降维

pbmc = RunUMAP(pbmc, dims = 1:10)

pbmc = RunTSNE(pbmc, dims = 1:10)


#数据可视化

plot1 = DimPlot(pbmc, reduction = "umap", label = F)

plot2 = DimPlot(pbmc, reduction = "tsne", label = F)


plot1 + plot2

最后编辑于 04-10 · 浏览 418

回复收藏3

全部讨论0

默认最新
avatar
分享帖子
share-weibo分享到微博
share-weibo分享到微信
认证
返回顶部