5.2 數(shù)據(jù)可視化與降維
5.2.1 簡介
在本章中谣蠢,我們將繼續(xù)使用上一章生成的過濾后的Tung數(shù)據(jù)集唉锌。我們將探索可視化數(shù)據(jù)的不同方式试读,以便評(píng)估質(zhì)控步驟后表達(dá)矩陣發(fā)生的變化。scater
包提供了幾個(gè)非常有用的函數(shù)來簡化可視化。
單細(xì)胞RNA測序的一個(gè)重要方面是消除批次效應(yīng)洽腺。批次效應(yīng)是在處理過程中添加到樣本中的技術(shù)噪音脚粟。例如,如果兩組樣品是在不同的實(shí)驗(yàn)室中準(zhǔn)備的蘸朋、甚至在同一實(shí)驗(yàn)室的不同日期準(zhǔn)備的核无,那么我們可能會(huì)觀察到同時(shí)處理的樣品之間有更大的相似性。在最壞的情況下藕坯,批次效應(yīng)可能會(huì)被誤認(rèn)為是真正的生物變異团南。Tung的數(shù)據(jù)使我們能夠以可控的方式探索這些問題,因?yàn)闃颖咎幚矸绞降囊恍┩怀龅姆矫嬉驯挥涗浵聛砹侗搿@硐肭闆r下吐根,我們希望看到來自同一個(gè)體的批次聚集在一起,并且每個(gè)個(gè)體對(duì)應(yīng)不同的組辐马。<
讓我們創(chuàng)建另一個(gè)SingleCellExperiment
對(duì)象umi.qc
拷橘,刪除不必要的低表達(dá)基因和低質(zhì)量的細(xì)胞。
> umi.qc <- umi[! rowData(umi)$discard,! colData(umi)$discard]
5.2.2 PCA作圖
全覽數(shù)據(jù)的最簡單方法是使用主成分分析對(duì)其進(jìn)行轉(zhuǎn)換喜爷,然后可視化前兩個(gè)主成分冗疮。
主成分分析(PCA)是一種統(tǒng)計(jì)過程,它將一組觀測值轉(zhuǎn)換為一組線性不相關(guān)(正交)的變量檩帐,稱為主成分(PC)术幔。主成分的數(shù)量小于或等于原始變量的數(shù)量。
從數(shù)學(xué)上來說湃密,PC對(duì)應(yīng)于協(xié)方差矩陣的特征向量诅挑。特征向量按特征值排序,以便第一個(gè)主成分盡可能多地解釋數(shù)據(jù)中的變異性泛源,并且每個(gè)后續(xù)PC在與前一個(gè)PC正交的前提下依次具有最高的方差拔妥。<
5.2.2.1 QC前
如果沒有進(jìn)行對(duì)數(shù)變換或標(biāo)準(zhǔn)化,PCA圖就無法按重復(fù)或個(gè)體分離數(shù)據(jù)集达箍。測序深度具有重要影響——具有大量高表達(dá)基因的樣本(細(xì)胞)主導(dǎo)著PC:
> umi <- runPCA(umi, exprs_values = "counts")
> dim(reducedDim(umi, "PCA"))
[1] 864 50
> plotPCA(umi, colour_by = "batch", size_by = "detected", shape_by = "individual")
通過對(duì)數(shù)變換没龙,我們均衡了高表達(dá)和低表達(dá)基因之間的巨大差異,并看到細(xì)胞按重復(fù)幻梯、個(gè)體和測序深度分組。當(dāng)重新運(yùn)行PCA時(shí)努释,umi
中的reducedDim對(duì)象將被覆蓋。
> umi <- runPCA(umi, exprs_values = "logcounts_raw")
> dim(reducedDim(umi, "PCA"))
[1] 864 50
> plotPCA(umi, colour_by = "batch", size_by = "detected", shape_by = "individual")
顯然,對(duì)數(shù)變換對(duì)我們的數(shù)據(jù)是有益的——它減少了第一個(gè)主成分的方差并且分離了一些生物學(xué)效應(yīng)辙诞。此外拆吆,它使表達(dá)值的分布更加正常。在以下分析和章節(jié)中,將默認(rèn)使用logcounts_raw
恩沛。
但是在扰,僅進(jìn)行對(duì)數(shù)轉(zhuǎn)換不足以解釋細(xì)胞之間的技術(shù)誤差(例如測序深度)。因此雷客,請(qǐng)不要使用logcounts_raw
進(jìn)行下游分析芒珠,而是使用SingleCellExperiment
對(duì)象的logcounts
,它不僅進(jìn)行了對(duì)數(shù)轉(zhuǎn)換搅裙,還按文庫大小進(jìn)行了歸一化(例如CPM歸一化)皱卓。在課程中,我們僅將logcounts_raw
用于演示目的部逮。
5.2.2.2 QC后
使用umi.qc
數(shù)據(jù)而不是umi
進(jìn)行與上述相同的分析:
> umi.qc <- runPCA(umi.qc, exprs_values = "logcounts_raw")
> dim(reducedDim(umi.qc, "PCA"))
[1] 670 50
> plotPCA(umi.qc, colour_by = "batch", size_by = "detected", shape_by = "individual")
與上圖相比,經(jīng)過QC后兄朋,NA19098.r2(橙色圓)細(xì)胞不再形成異常值組掐禁。
默認(rèn)情況下,scater
僅使用變異最大的前500個(gè)基因來計(jì)算PCA颅和,可以通過ntop
參數(shù)來調(diào)整傅事。
5.2.3 tSNE圖
用于可視化scRNA-seq數(shù)據(jù)的替代方法是tSNE圖。tSNE(t-Distributed Stochastic Neighbor Embedding)將降維結(jié)果(例如PCA)與最近鄰網(wǎng)絡(luò)上的隨機(jī)游走相結(jié)合來將高維數(shù)據(jù)(即示例的14,154維表達(dá)矩陣)映射到二維空間融虽,同時(shí)保留細(xì)胞之間的局部距離享完。與PCA相比,tSNE是一種隨機(jī)算法有额,這意味著在同一數(shù)據(jù)集上多次運(yùn)行該方法將產(chǎn)生不同的結(jié)果般又。由于算法的非線性和隨機(jī)性,tSNE難以直觀地解釋巍佑。為了確避钋ǎ可重復(fù)性,我們?cè)谝韵麓a中指定了隨機(jī)數(shù)生成器的“種子”萤衰,以便我們始終獲得相同的結(jié)果堕义。
5.2.3.1 QC前
> set.seed(123456)
> umi <- runTSNE(umi, exprs_values = "logcounts_raw", perplexity = 130)
> plotTSNE(umi, colour_by = "batch", size_by = "detected", shape_by = "individual")
5.2.3.2 QC后
> set.seed(123456)
> umi.qc <- runTSNE(umi.qc, exprs_values = "logcounts_raw", perplexity = 130)
> plotTSNE(umi.qc, colour_by = "batch", size_by = "detected", shape_by = "individual")
解釋PCA和tSNE圖通常具有挑戰(zhàn)性,并且由于隨機(jī)性和非線性性質(zhì)脆栋,它們不太直觀倦卖。在這個(gè)例子中,很明顯它們產(chǎn)生了類似的圖像椿争。對(duì)比上面的PCA圖怕膛,再次清楚地表明,經(jīng)過QC過濾后NA19098.r2樣本不再是異常值秦踪。
此外褐捻,tSNE要求提供一個(gè)困惑度(perplexity
)參數(shù)掸茅,該參數(shù)反映了用于構(gòu)建最近鄰網(wǎng)絡(luò)的最近鄰數(shù)量,高困惑度會(huì)創(chuàng)建一個(gè)密集的網(wǎng)絡(luò)柠逞,使細(xì)胞聚集在一起昧狮,而低困惑度會(huì)使網(wǎng)絡(luò)變得更加稀疏,從而使細(xì)胞群彼此分離板壮。scater
使用默認(rèn)的困惑度逗鸣,即總細(xì)胞數(shù)除以五(向下取整)。
可以在http://distill.pub/2016/misread-tsne/閱讀有關(guān)使用tSNE的更多信息个束。最近的一篇題為《The art of using t-SNE for single-cell transcriptomics》的文章討論了tSNE和UMAP之間的異同慕购,文章發(fā)現(xiàn)大多數(shù)觀察到的差異是由于初始化造成的,并在可視化不同大小的scRNA-seq數(shù)據(jù)集時(shí)給出了參數(shù)調(diào)整的建議茬底。
往期內(nèi)容:
重生之我在劍橋大學(xué)學(xué)習(xí)單細(xì)胞RNA-seq分析——4. 使用Bioconductor進(jìn)行scRNA-seq分析(1)
重生之我在劍橋大學(xué)學(xué)習(xí)單細(xì)胞RNA-seq分析——4. 使用Bioconductor進(jìn)行scRNA-seq分析(2)
重生之我在劍橋大學(xué)學(xué)習(xí)單細(xì)胞RNA-seq分析——5. scRNA-seq數(shù)據(jù)的基本質(zhì)量控制 (QC) 和探索(1)