大神一句話,菜鳥跑半年。我不是大神,但我可以縮短你走彎路的半年~ 就像歌兒唱的那樣,如果你不知道該往哪兒走,就留在這學點生信好不好~ 這里有豆豆和花花的學習歷程,從新手到進階,生信路上有你有我! 豆豆發(fā)送于19.10.1目標:得到了不同的cluster,就可以利用findMarkers() 去為每個cluster尋找marker基因。
它的方法是:兩兩cluster之間對每個基因的log表達量進行 Welch t-tests (Soneson and Robinson 2018)。這樣就能找到每個cluster中的差異表達基因(前提是掩蓋掉非生物因素,例如批次信息)。得到的top 差異基因能更好地作為marker基因候選,原因就是:既然它們是最具有差異代表性的,那么利用它們就能區(qū)分不同cluster的細胞,也就實現了marker的目的?!井斎?,還有許多細胞類型自己特有的基因,也是作為marker的候選者】
markers <- findMarkers(sce, my.clusters, block=sce$Plate)
每個cluster與其他cluster的兩兩比較結果會整合到每個cluster的差異基因結果數據框中 例如:看一下第1個cluster的top10差異基因 marker.set <- markers[['1']] head(marker.set, 10)
## DataFrame with 10 rows and 7 columns ## Top p.value FDR logFC.2 ## <integer> <numeric> <numeric> <numeric> ## Aurkb 1 6.65863261824492e-75 1.58362259559721e-70 -7.37163350569914 ## Tk1 1 6.41442387689833e-64 3.81385607660686e-60 -4.92754579848056 ## Myh11 1 4.95086465211539e-49 9.81220116843835e-46 4.42159318376489 ## Cdca8 1 2.22334940769686e-46 3.5251945975503e-43 -6.84273526334783 ## Ccna2 2 1.16841222330534e-68 1.38941739534356e-64 -7.3079756458424 ## Rrm2 2 1.48873842020081e-56 5.05809512109088e-53 -5.52120322191947 ## Cks1b 2 3.83636139889977e-39 2.40105745131667e-36 -6.6792118199827 ## Pirb 2 1.83893803490065e-34 6.15992440620318e-32 5.25803749166673 ## Pimreg 3 7.41004737119548e-68 5.87443855430467e-64 -7.30454210816126 ## Pclaf 3 8.9651722100101e-51 2.13218690670669e-47 -5.60087985621813 ## logFC.3 logFC.4 logFC.5 ## <numeric> <numeric> <numeric> ## Aurkb -6.72799345321135 -1.95039440976238 -6.91128802096519 ## Tk1 -7.74065113926215 -3.53749565362853 -4.63516273649457 ## Myh11 4.30812918035861 4.45235717737968 1.0413149433198 ## Cdca8 -4.88595092732349 -2.43821402084038 -7.12791471326961 ## Ccna2 -6.9676852052539 -2.46589325823089 -7.12692721843331 ## Rrm2 -7.94685699818751 -3.19173143688883 -5.42878091964762 ## Cks1b -5.92137181826573 -4.37146346518812 -6.214592473138 ## Pirb 5.18195596569259 5.87631057587633 0.0704964218555272 ## Pimreg -5.91099762335684 -0.874660676141792 -7.01798853404623 ## Pclaf -7.56997893312346 -2.36631043435985 -5.16956927698937
可以將全部cluster的marker基因保存起來 write.table(marker.set, file='416B_marker_1.tsv', sep='\t', quote=FALSE, col.names=NA)
最后熱圖對cluster1的marker基因可視化 top.markers <- rownames(marker.set)[marker.set$Top <= 10] plotHeatmap(sce, features=top.markers, columns=order(sce$cluster), colour_columns_by=c('cluster', 'Plate', 'Oncogene'), cluster_cols=FALSE, center=TRUE, symmetric=TRUE, zlim=c(-5, 5), show_colnames = F)
圖29從圖中粗略地看一看:cluster1包含了處理組(oncogene-induced)細胞,另外第5群也是處理組細胞。如果生物背景足夠的話,也能推斷出這些細胞與某些DE基因之間的聯系。 「需要注意的地方」當然,不是所有的marker基因都在所選cluster都是上調或下調的,它不僅僅是差異基因這么簡單。如果只選差異基因,這樣會過濾掉很多重要的marker基因。 例如,在CD4+-only, CD8+-only, double-positive and double-negative T cells混合的細胞群體中,重要的細胞marker基因Cd4或Cd8 都不會被檢測到,因為這兩個基因會在其中兩個類型的細胞群體中都存在(比如Cd4 會存在于CD4+-only和 double-positive兩種細胞類型中) 這里強烈建議挑選一些已經驗證過的細胞marker基因,比如 CellMarker數據庫(http://biocc./CellMarker/):整理了100,000+發(fā)表的文獻,包含人的158個組織 (亞組織)的467個細胞類型的13,605個Marker基因,和鼠的81個組織 (亞組織)的389個細胞類型的9, 148個Marker基因 PanglaoDB(https:///):小鼠的170種組織954個樣本近400W細胞和來自人的68種組織279個樣本100w+細胞 小鼠Mouse Cell Atlas(http://bis./MCA/) signatureDB(https:///signaturedb/)
最好再加上一些定量實驗,比如fluorescent in situ hybridisation or quantitative PCR,確定細胞亞群真實存在,而不僅僅是因為我們分析得到是這樣 作者建議如果只想提取cluster中的上調表達基因,就可以在findMarkers 中指定參數direction='up' 。應用在高度異質性群體中,可以更快速判斷不同的cluster findMarkers 除了將一個cluster與其他各個cluster兩兩比較之外,還能對某個cluster和其他全部clusters進行差異分析,設置參數pval.type='all' ;如果再和direction='up' 連用,就可以用來鑒定每個cluster中特異的marker基因。但是如果存在”過度聚類“的情況,原本一個cluster分成了兩個,那么這個特異的marker基因就不會存在。
另外,這里的p值不能簡單理解為顯著性。具體原因在:https:///packages/3.9/simpleSingleCell/vignettes/de.html#misinterpretation-of-de-$p$-values
|