记录一个单细胞转录组数据处理遇到的问题

昨天下午处理单细胞转录组数据时,在我质控完,标准化之后寻找高可变基因时,遇到这样一个问题:

i <- 1
object.subset <- object.list[[i]]
samplename = as.character(object.subset@meta.data$orig.ident[1])
message("visualize high varible genes: ",samplename)
top20 <- head(VariableFeatures(object.subset), 20)
plot6 <- VariableFeaturePlot(object.subset, pt.size = 2, cols = c("black", "blue"))
#LabelPoints(plot = plot6, points = top20, repel = TRUE)
plot7 <- LabelPoints(plot = plot6, points = top20, repel = T)+ NoLegend()
CombinePlots(plots = list(plot6, plot7), legend = "bottom")

得到的图是这样的:


image.png

我很疑惑,我的黑色的那些不高变异的基因去哪了。我知道一个点可能对应多个基因,但是目前看来,都是蓝色的话这些应该都是高变基因,不高变异的基因应该不在这里面吧。

当初创建Seurat对象时设定的是使用每个细胞表达的基因数不小于1,计数基因表达在不少于1个细胞中作为初筛,我在想,是不是因为数据太差,我质控去掉太多细胞,而没有重新筛选,没有再去掉那些在剩余的细胞中都不表达的基因?目前猜测不显示可能是因为没有基因表达量为0?

于是接下来我验证是不是这个原因。

在质控的步骤,去除不要的细胞之后,我重新创建新的Seurat对象,并且使用每个细胞表达的基因数不小于1,计数基因表达在不少于1个细胞中作为初筛,这时我的细胞数没变,基因数由原先的17125个降为5691个。于是再次寻找高可变基因时,我发现还是一样的看不见黑色的不高可变的基因。唉。。。

visualize high varible genes1.png

看来还是要从数据结构和代码入手查一查。

首先看看这个前20高变异的基因具体都是啥。

> head(VariableFeatures(object.subset), 20)
 [1] "UMOD"     "GPX3"     "THOC2"    "MALAT1"   "BCYRN1"   "CSF3R"    "UGT2B7"   "H3F3A"    "ATP1A1"   "MT1E"     "MT1G"     "MTCO1P12"
[13] "MT1F"     "MT2A"     "CNOT7"    "JAML"     "IFITM2"   "ANKRD12"  "CUBN"     "KNG1"    
> tp1 <- object.list[[i]]
> tp1@assays$RNA@meta.features
              vst.mean vst.variance vst.variance.expected vst.variance.standardized vst.variable
AAAS       0.009433962  0.009433962                   NaN                       NaN         TRUE
AAK1       0.018867925  0.018688230                   NaN                       NaN         TRUE
AAMP       0.018867925  0.018688230                   NaN                       NaN         TRUE
AAR2       0.009433962  0.009433962                   NaN                       NaN         TRUE
AARS       0.018867925  0.018688230                   NaN                       NaN         TRUE
AASDH      0.009433962  0.009433962                   NaN                       NaN         TRUE
AATF       0.018867925  0.018688230                   NaN                       NaN         TRUE
AATK       0.009433962  0.009433962                   NaN                       NaN         TRUE
ABAT       0.009433962  0.009433962                   NaN                       NaN         TRUE
ABCA1      0.018867925  0.018688230                   NaN                       NaN         TRUE
ABCA2      0.009433962  0.009433962                   NaN                       NaN         TRUE
ABCA5      0.009433962  0.009433962                   NaN                       NaN         TRUE
ABCB1      0.018867925  0.018688230                   NaN                       NaN         TRUE
ABCC10     0.009433962  0.009433962                   NaN                       NaN         TRUE
ABCC3      0.009433962  0.009433962                   NaN                       NaN         TRUE
ABCD3      0.009433962  0.009433962                   NaN                       NaN         TRUE
ABCE1      0.037735849  0.150943396            0.04677756                 1.0399656         TRUE
ABCF1      0.018867925  0.018688230                   NaN                       NaN         TRUE
ABCF2      0.009433962  0.009433962                   NaN                       NaN         TRUE
ABCG1      0.018867925  0.037735849                   NaN                       NaN         TRUE
ABHD14B    0.009433962  0.009433962                   NaN                       NaN         TRUE
ABHD17B    0.018867925  0.018688230                   NaN                       NaN         TRUE
ABHD2      0.028301887  0.084905660            0.03417981                 1.0329586         TRUE
ABHD5      0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
ABHD6      0.009433962  0.009433962                   NaN                       NaN         TRUE
ABI1       0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
ABL1       0.009433962  0.009433962                   NaN                       NaN         TRUE
ABLIM1     0.018867925  0.037735849                   NaN                       NaN         TRUE
ABR        0.009433962  0.009433962                   NaN                       NaN         TRUE
ABRACL     0.018867925  0.018688230                   NaN                       NaN         TRUE
ABT1       0.009433962  0.009433962                   NaN                       NaN         TRUE
ABTB1      0.009433962  0.009433962                   NaN                       NaN         TRUE
AC000089.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC002044.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC002558.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC002558.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC004057.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC004241.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC004453.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC004466.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC004687.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC005154.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC005261.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC005332.3 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC005332.6 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC005726.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC005726.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC005899.7 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC005912.1 0.037735849  0.036657682            0.04677756                 0.7836595         TRUE
AC006210.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC006387.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC007000.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC007038.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC007182.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC007336.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC007406.5 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC007878.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC007969.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC008038.1 0.066037736  0.062264151            0.08567702                 0.7267310         TRUE
AC008127.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC008592.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009113.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009118.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009220.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009318.4 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009404.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009506.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009509.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC009961.1 0.028301887  0.046810422            0.03417981                 1.2958250         TRUE
AC010186.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC010969.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC010997.6 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC011445.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC011495.1 0.037735849  0.036657682            0.04677756                 0.7836595         TRUE
AC012291.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC012645.1 0.037735849  0.093800539            0.04677756                 1.2281976         TRUE
AC013394.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC015726.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC015871.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC015871.4 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC015871.5 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC015883.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC015911.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC016383.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC016734.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC016739.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC016747.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC016957.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC018541.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC018607.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC018638.5 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC018647.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC019109.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC020659.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC020916.1 0.103773585  0.151033243            0.14437935                 1.0460862         TRUE
AC020917.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC021054.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC021078.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC022916.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC022973.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC023157.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC023906.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC024075.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC024075.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC024293.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC025171.2 0.028301887  0.046810422            0.03417981                 1.2958250         TRUE
AC025171.5 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC026273.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC026362.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC026401.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC027290.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC027307.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC027559.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC027644.3 0.018867925  0.037735849                   NaN                       NaN         TRUE
AC034236.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC046134.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC068446.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC068631.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC069213.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC073508.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC073861.1 0.047169811  0.159658580            0.05895432                 1.1935702         TRUE
AC074043.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC079140.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC079316.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC079630.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC084117.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC087633.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC090114.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC090498.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC090559.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC092047.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC092620.1 0.028301887  0.046810422            0.03417981                 1.2958250         TRUE
AC092683.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC093010.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC093157.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC093323.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC093496.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC093535.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC096533.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC096887.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC097534.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC097636.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC098818.2 0.018867925  0.037735849                   NaN                       NaN         TRUE
AC099343.3 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC099489.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC099521.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC099560.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC100810.1 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC100861.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC104046.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC104232.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC104306.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC104619.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC104809.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC104964.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC105942.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC106795.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC106820.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC106872.6 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC106886.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC107214.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC107464.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC108047.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC108704.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC109326.1 0.028301887  0.046810422            0.03417981                 1.2958250         TRUE
AC112496.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC113935.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC114980.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC115223.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC116533.1 0.066037736  0.081311770            0.08567702                 0.9490499         TRUE
AC120114.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC122718.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC124319.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC127070.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC127070.4 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC130895.1 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC131235.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC133134.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC135050.6 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC135983.2 0.018867925  0.018688230                   NaN                       NaN         TRUE
AC137630.3 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC138207.4 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC139887.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC144530.1 0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
AC239799.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC243919.1 0.056603774  0.053908356            0.07213999                 0.7472742         TRUE
AC244669.1 0.028301887  0.046810422            0.03417981                 1.2958250         TRUE
AC245407.2 0.009433962  0.009433962                   NaN                       NaN         TRUE
AC246787.1 0.075471698  0.108535490            0.09960402                 1.0896698         TRUE
ACAA1      0.009433962  0.009433962                   NaN                       NaN         TRUE
ACAA2      0.028301887  0.027762803            0.03417981                 0.8122573         TRUE
ACACA      0.009433962  0.009433962                   NaN                       NaN         TRUE
ACAD8      0.018867925  0.018688230                   NaN                       NaN         TRUE
ACAD9      0.009433962  0.009433962                   NaN                       NaN         TRUE
ACADSB     0.047169811  0.045372866            0.05895432                 0.7696275         TRUE
ACADVL     0.009433962  0.009433962                   NaN                       NaN         TRUE
ACAP1      0.037735849  0.036657682            0.04677756                 0.7836595         TRUE
ACAP2      0.018867925  0.018688230                   NaN                       NaN         TRUE
ACAP3      0.009433962  0.009433962                   NaN                       NaN         TRUE
ACAT1      0.009433962  0.009433962                   NaN                       NaN         TRUE
 [ reached 'max' / getOption("max.print") -- omitted 5491 rows ]
> tp1var <- tp1@assays$RNA@meta.features
> table(tp1var$vst.variable)

FALSE  TRUE 
 3691  2000 

看来,就是这个数据绘制出的图。具体是哪一列数据出的图呢?检查了一下,发现应该是这个vst.variance.standardized。


image.png

回到上面的问题,为什么没有不高可变的基因呢?

> tp1varF <- tp1var[!tp1var$vst.variable,]
> View(tp1varF)
image.png
> table(tp1varF$vst.variance.standardize)
< table of extent 0 >

综上所述,可能是因为这vst.variance.standardized这列数据为NaN吧。至于为什么是NaN,应该是的和前面的FindVariableFeatures里的参数有关,我用是默认方法selection.method = "vst"。换一个方法验证一下?看看有什么方法可选:


image.png

试一试disp这个方法:

## 挑选变异分较大的基因
object.list <- lapply(X = object.list, FUN = function(x) {
  x <- NormalizeData(x,normalization.method = "LogNormalize",scale.factor = 10000,verbose = F)
  x <- FindVariableFeatures(x, selection.method = "disp", nfeatures = 2000,
                            mean.function = ExpMean, dispersion.function = LogVMR,
                            x.low.cutoff = 0.0125, 
                            y.cutoff = 0.5)
})
i <- 1
object.subset <- object.list[[i]]
samplename = as.character(object.subset@meta.data$orig.ident[1])
message("visualize high varible genes: ",samplename)
top20 <- head(VariableFeatures(object.subset), 20)
plot6 <- VariableFeaturePlot(object.subset, pt.size = 2, cols = c("black", "blue"))
#LabelPoints(plot = plot6, points = top20, repel = TRUE)
plot7 <- LabelPoints(plot = plot6, points = top20, repel = T)+ NoLegend()

CombinePlots(plots = list(plot6, plot7), legend = "bottom")

image.png

果然就出现了。检查一下数据:

> tmp1 <- object.subset@assays$RNA@meta.features
> View(tmp1)
> head(VariableFeatures(object.subset), 20)
 [1] "MT-RNR2"     "NEAT1"       "MED13L"      "MALAT1"      "TPSB2"       "KCNQ1OT1"    "ZNF397"      "ZBTB21"      "DUSP6"      
[10] "DTWD1"       "INO80E"      "PLEKHA5"     "SERPINF2"    "ANKRD20A11P" "MED13"       "TCAF1"       "ABCE1"       "AC098818.2" 
[19] "ERCC6L2"     "PURB"       
> 

这个应该是根据mvp.dispersion画的图。


image.png

mvp.variable等于FALE的时候是有数值的。


image.png

再看看那些正常的图的数据情况,这是另一个数据的图。


image.png

看看这个数据的情况:

> tp1 <- object.list[[i]]
> tp1v <- tp1@assays$RNA@meta.features
> View(tp1v)
image.png
tp1vF <- tp1v[!tp1v$vst.variable,]
image.png

当vst.variable为FALE时,有的有数值有的没数值。如此看来,应该就是NaN的原因。
最后,感谢过来帮忙一起分析讨论的赵工~~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容