中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
復(fù)現(xiàn)Nature圖表:GSEA分析及可視化包裝函數(shù)
?

詳情請聯(lián)系作者:

?
這篇帖子主要的目的是寫一個轉(zhuǎn)錄組GSEA分析和可視化通用的函數(shù)。起因是我們想要復(fù)現(xiàn)一篇文章的GSEA可視化圖片,這個Nature文章GSEA可視化挺好的:


(reference:B-cell-specific checkpoint molecules that regulate anti-tumour immunity)

后來干脆一不做二不休,寫一個函數(shù)吧,有差異分析結(jié)果即可,可視化也是一鍵出結(jié)果。算是懶人福音吧。我們此部分一共有兩個函數(shù),一個是KS_GSEA,作用是進行轉(zhuǎn)錄組數(shù)據(jù)GSEA分析,提供clusterProfiler和fgsea兩種R包分析方式,KS_GSEA適用于human和mouse兩個物種,支持KEGG、GO(BP)的GSEA分析。KS_GSEA_plot作用是進行GSEA結(jié)果的可視化,可選擇需要的通路進行展示。此函數(shù)為付費內(nèi)容,微信vip群已提前更新,需要購買函數(shù)的小伙伴微信聯(lián)系作者!


接下來,我們看看函數(shù)的具體作用和參數(shù)解釋。本函數(shù)使用解說視頻下周B站上線!


這里我們以一個單細(xì)胞的數(shù)據(jù)為例,首先做一下差異分析。Bulk RNA的差異分析不再多說。GSEA分析是基于已經(jīng)完成差異分析結(jié)果,且納入所有基因。目前R做GSEA用的比較多的是clusterProfiler和fgsea包,所以這兩種包的分析方式我們都包含進去了。使用的時候選擇自己需要的即可。
library(Seurat)library(msigdbr)library(fgsea)library(clusterProfiler)library(ggplot2)#加載函數(shù)source('./KS_GSEA.R')source('./KS_GSEA_plot.R')
#差異基因-----------------------------------------------------------------------load("D:/KS項目/公眾號文章/GSEA分析及可視化函數(shù)/sce_mar.RData")df <- FindMarkers(Macrophage, min.pct = 0, logfc.threshold = 0, group.by = "group",ident.1 ="BM",ident.2="GM")df$gene = rownames(df)
得到的差異分析結(jié)果是一個數(shù)據(jù)框,包含gene symbol這一列,還有l(wèi)ogFC這一列。我們知道GSEA分析需要對基因按照FC進行排序,我們這里的分析不需要事先進行排序,只要提供gene和logFC即可。兩種R包的結(jié)果我們都做一下。
#GSEA分析-----------------------------------------------------------------------GSEA_CP <- KS_GSEA(gene = df$gene,                   LogFC = df$avg_log2FC,                   analysis = "KEGG",                   package = 'clusterProfiler',                   OrgDb = 'org.Hs.eg.db')class(GSEA_CP)# [1] "gseaResult"# attr(,"package")# [1] "DOSE"

GSEA_F <- KS_GSEA(gene = df$gene, LogFC = df$avg_log2FC, analysis = "KEGG", package = 'fgsea', OrgDb = 'org.Hs.eg.db')class(GSEA_F)# [1] "data.table" "data.frame"

可以看到,clusterProfiler包返回的是一個gseaResult,fgsea包返回的是一個"data.table","data.frame"。這些結(jié)果就是我們下一步可視化的輸入文件。運行結(jié)束后,分析結(jié)果已txt或者csv的形式直接保存到當(dāng)前環(huán)境路徑下!

我們對可視化函數(shù)進行了設(shè)置,NES>0的結(jié)果點用紅色顯示。NES<0的結(jié)果用藍(lán)色點顯示。這里我們挑選自己感興趣的通路進行可視化。

#NES>0p1=KS_GSEA_plot(inputType = "clusterProfiler",             analysis = "KEGG",             data = GSEA_CP,             term = 'Oxidative phosphorylation',             gene = df$gene,             LogFC  = df$avg_log2FC,             OrgDb = 'org.Hs.eg.db')

p2=KS_GSEA_plot(inputType = "fgsea", analysis = "KEGG", data = GSEA_F, term = 'Huntingtons disease', gene = df$gene, LogFC = df$avg_log2FC, OrgDb = 'org.Hs.eg.db')p1+p2

NES<0,這里需要注意一個問題,clusterProfiler和fgsea雖然都是GSEA分析,但是兩者得到的結(jié)果并不是一摸一樣完全相同的,總是有一些出入,這是因為數(shù)據(jù)庫,分析方式不一樣。選擇需要的包使用一個即可。

#NES<0p3=KS_GSEA_plot(inputType = "clusterProfiler",             analysis = "KEGG",             data = GSEA_CP,             term = 'JAK-STAT signaling pathway',             gene = df$gene,             LogFC  = df$avg_log2FC,             OrgDb = 'org.Hs.eg.db')

p4=KS_GSEA_plot(inputType = "fgsea", analysis = "KEGG", data = GSEA_F, term = 'Jak stat signaling pathway', gene = df$gene, LogFC = df$avg_log2FC, OrgDb = 'org.Hs.eg.db')p3+p4

當(dāng)然了,我們可以利用循環(huán)一次性可視化通路。

#批量循環(huán)#NES>0pathway <- c('Oxidative phosphorylation',             "Parkinson disease",             "Biosynthesis of amino acids",             "Cardiac muscle contraction")
pathway_list <- list()for (i in 1:length(pathway)) { p = KS_GSEA_plot(inputType = "clusterProfiler", analysis = "KEGG", data = GSEA_CP, term = pathway[i], gene = df$gene, LogFC = df$avg_log2FC, OrgDb = 'org.Hs.eg.db') pathway_list[[i]] <- p }#組合圖CombinePlots(pathway_list, ncol = 2)

用另一個數(shù)據(jù)批量做一下下調(diào)的。

#NES<0pathway1 <- c('Melanoma',              'Prostate cancer',              'Ecm receptor interaction',              'Tgf beta signaling pathway')
pathway_list1 <- list()for (i in 1:length(pathway)) { p = KS_GSEA_plot(inputType = "fgsea", analysis = "KEGG", data = GSEA_F, term = pathway1[i], gene = df$gene, LogFC = df$avg_log2FC, OrgDb = 'org.Hs.eg.db') pathway_list1[[i]] <- p }#組合圖CombinePlots(pathway_list1, ncol = 2)

這就是所有內(nèi)容了,希望對你有所啟發(fā)。這個函數(shù)其實并不是很完美,首先是物種只支持小鼠和人,其次是分析參數(shù)我沒有再設(shè)置,用的是我常用的。當(dāng)然了,這個函數(shù)框架我提供了,需要更加個性化的可以自行修改。覺得分享有用的,點個贊唄!

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用新姿勢玩KEGG,是種什么體驗...
R語言GSEA分析(三)
為R包寫一本書(像Y叔致敬)
又是神器!基于單基因批量相關(guān)性分析的GSEA
得到差異分析之后進行功能富集分析
clusterProfiler|GSEA富集分析及可視化
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服