使用Seurat找高变异基因(HVGs)

参考:Seurat官网:https://satijalab.org/seurat/v3.2/pbmc3k_tutorial.html
来自生信星球刘小泽的个人博客:https://www.jieandze1314.com/
仅用于个人参考学习

高变异基因:highly variable features(HVGs),就是在细胞与细胞间进行比较,选择表达量差别最大的

Seurat中利用FindVariableFeatures函数,会计算一个mean-variance结果,也就是给出表达量均值和方差的关系并且得到top variable features

计算方法主要有三种:

vst(默认)

首先利用loesslog(variance)log(mean)拟合一条直线,然后利用观测均值和期望方差对基因表达量进行标准化,最后根据保留最大的标准化的表达量计算方差

mean.var.plot

首先利用mean.functiondispersion.function分别计算每个基因的平均表达量和离散情况,然后根据平均表达量将基因们分散到一定数量(默认是20个)的小区间(bin)中,并且计算每个bin中z-score

dispersion(最直接)

挑选最高离差值的基因

例如:使用Seurat 版本3

# V3 代码来自官方教程
pbmc<-FindVariableFeatures(pbmc, selection.method="vst", nfeatures=2000)
top10<-head(VariableFeatures(pbmc),10)
# 分别绘制带基因名和不带基因名的
plot1<-VariableFeaturePlot(pbmc)
plot2<-LabelPoints(plot=plot1, points=top10, repel=TRUE)
CombinePlots(plots=list(plot1, plot2))
image

使用Seurat版本2

# V2pbmc<-FindVariableGenes(object=pbmc,
  mean.function=ExpMean,
  dispersion.function=LogVMR )
length( [email protected])
#默认值是:x.low.cutoff = 0.1, x.high.cutoff = 8, y.cutoff = 1,
#就是说取log后的平均表达量(x轴)介于0.1-8之间的;分散程度(y轴,即标准差)至少为1的

V3计算mean.functionFastLogVMR均采用了加速的FastExpMean、FastLogVMR模式

V3横坐标范围设定参数改成:mean.cutoff,整合了原来V2的x.low.cutoff + x.high.cutoff
纵坐标改成:dispersion.cutoff ,替代了原来V2的y.cutoff

V3默认选择2000个差异基因,检查方法也不同
(V3用VariableFeatures(sce)检查,V2用[email protected]检查)

你可能感兴趣的:(使用Seurat找高变异基因(HVGs))