單基因生信分析2--下遊分析

2021-02-20 醫學僧的科研日記
前期小王子已經更過單基因生信分析--差異分析&生存分析,今天,小王子跟大家一起學習如何進行下遊挖掘,也就是本期主打的單基因下遊富集通路,以下以TCGA資料庫中的LIHC數據為例,跳躍的部分大家可以結合著前期推送一起看。將TCGA中的LIHC基因表達數據整理成如下形式的數據:

rm(list = ls())library(data.table)library(magrittr)expr <- fread('TCGA-LIHC.htseq_fpkm.tsv.gz',h=T,check.names = F)ann <- read.table('gencode.v22.annotation.gene.probeMap',h=T)expr2 <- merge(ann[,1:2],expr,by=1) %>% .[,-1]library(limma)expr2 <- avereps(expr2[,-1],ID=expr2$gene) %>% as.data.frame() expr3 <- as.data.frame(t(expr2))expr4 <- expr3[order(names(expr3))]   

相關性分析常用的有pearson相關係數和spearman相關係數,其中pearson相關係數適用於連續性變量,且變量服從正態分布的情況,為參數性的相關係數;而spearman相關係數適用於連續性及分類型變量,為非參數性的相關係數。以下採用spearman相關。

gene <- as.numeric(expr4[,"A1BG"]) col <- colnames(expr4)data <- data.frame(col)for (i in 1:length(col)){  test <- cor.test(as.numeric(expr4[,i]),gene,type="spearman")  data[i,2] <- test$estimate  data[i,3] <- test$p.value  }

這裡的p值<0.05會有很多基因滿足,我們需要進一步根據篩選出來的基因個數來設置相關係數cor的閾值,這裡小王子設置成0.6,最終得到87個顯著相關基因進行下遊分析。

names(data) <- c("gene","correlation","pvalue")sig_data <- data[data$pvalue<0.05&abs(data$correlation)>0.6,]sig_data <- na.omit(sig_data)

四、利用org.Hs.eg.db和clusterProfiler包進行GO和KEGG富集分析:

這兩個包都不怎麼好安裝,大家如果沒有的話可以嘗試下小王子隱藏的代碼。最終獲得與我們所選目的基因顯著相關的基因在GO和KEGG資料庫中富集的通路。

######利用顯著相關基因進行GO和KEGG富集分析######library("org.Hs.eg.db")###沒有的話以下代碼安裝#if (!requireNamespace("BiocManager", quietly = TRUE))#     install.packages("BiocManager")#BiocManager::install("org.Hs.eg.db")library("clusterProfiler")###沒有的話以下代碼安裝#if (!requireNamespace("BiocManager", quietly = TRUE))#  install.packages("BiocManager")#BiocManager::install("clusterProfiler")gene_name=as.vector(sig_data$gene)geneID <- mget(gene_name, org.Hs.egSYMBOL2EG, ifnotfound=NA)%>%as.character()data=cbind(Gene=sig_data,entrezID=geneID)%>%as.data.frame()go <- enrichGO(gene=data$entrezID, OrgDb = org.Hs.eg.db, ont='ALL',pvalueCutoff = 0.05)%>%as.data.frame()kegg <- enrichKEGG(gene = data$entrezID,organism ="human",pvalueCutoff = 0.05)%>%as.data.frame()

由於GO富集到了275條通路,這裡根據p.adjust選取前20條進行展示;而KEGG一共富集到9條密切相關通路,這裡完全展示。

go1 <- go[order(go$p.adjust)[1:20],] go1$p.adjust <- -log10(go1$p.adjust)go1$GeneRatio <- ifelse(go1$ONTOLOGY=="BP",go1$Count/4541*100,go1$Count/4709*100)library(ggplot2)ggplot(go1,aes(Description,Count,fill=p.adjust))+  geom_bar(stat = "identity")+  coord_flip()+  scale_fill_gradient(low="blue",high="red")+  labs(x="",fill="-log10(adj.P)")+  ggtitle("Top20 GO enrichment of our genes")+  theme_bw()+  theme(axis.title = element_text(size = 16),        axis.text = element_text(size = 12),        legend.title = element_text(size = 12),        plot.title = element_text(size = 18,face = "bold",hjust = 0.5))

######繪製KEGG水平柱狀圖######kegg$p.adjust <- -log10(kegg$p.adjust)##將p.adjust進行-log10換算library(ggplot2)ggplot(kegg,aes(Description,Count,fill=p.adjust))+  geom_bar(stat = "identity")+  coord_flip()+  scale_fill_gradient(low="blue",high="red")+  labs(x="",fill="-log10(adj.P)")+  ggtitle("KEGG enrichment of our genes")+  theme_bw()+  theme(axis.title = element_text(size = 16),        axis.text = element_text(size = 12),        legend.title = element_text(size = 12),        plot.title = element_text(size = 18,face = "bold",hjust = 0.5))#題目設置:face = "bold"加粗字體;hjust = 0.5位置居中##kegg為輸入數據框,將Description作x,Count作y,繪圖後再利用coord_flip()進行x、y軸轉換,實現水平柱狀圖的繪製;##scale_fill_gradient(low="blue",high="red")設置漸變色(越紅P值越顯著);ggtitle("")設置題目;theme設置主題背景、字體等。

ggplot(go1,aes(GeneRatio,reorder(Description,GeneRatio),color=p.adjust,size=Count))+  geom_point(shape=19)+  scale_color_gradient(low = "green",high = "red")+  scale_size_continuous(range = c(2,9))+   labs(x="GeneRatio(%)",y="",color="-log10(adj.P)",size="Gene Count")+  ggtitle("Top20 GO enrichment of our genes")+  theme_bw()+  theme(axis.title = element_text(size = 16),        axis.text = element_text(size = 12),        legend.title = element_text(size = 12),        plot.title = element_text(size = 18,face = "bold",hjust = 0.5))

最後幾張結果展示部分,KEGG結果不太美觀,當然與我們選取的基因有很大關係,不過你也可以設置篩選條件時選擇cor=0.5作為閾值,會篩選出657個顯著相關基因,或許結果又不一樣了呢?多嘗試幾次,總有理想結果。或許還有人有這樣的疑惑:正相關和負相關的基因能否放一起進行富集分析呢?這裡小王子收集到的資料採用放在一起分析,映射到差異分析上調和下調放一起富集分析或許大家更好理解一些。

1.R-可視化基礎(4)—— GO/KEGG柱狀&氣泡圖--《醫學僧的科研日記》

2.R語言:單基因批量相關性分析的妙用--《愛科學》

相關焦點

  • 一個低調奢華有內涵的單基因分析思路
    許久沒有推出單基因分析思路了,很多粉絲常常會問到特定的單基因可以做什麼思路,根據小編的經驗來看單基因的思路是比較少的,很多都是發現調控軸然後做實驗驗證就完活了。因為研究的單一,能做的生信分析真的是很少很少,是真的不好分析,許多時候小編也是對此黔驢技窮,但是單基因分析接收率是真的高,因為專一嘛。今天的思路還挺別出心裁的,根據研究單個基因的互作基因來展開分析,小凳子搬好,開講了。
  • 你一直沒學會的科研技能——GO分析和Pathway分析
    解螺旋當通過測序或者生信資料庫獲取差異基因後通過GO富集分析可以找到富集差異基因的GO類條目,尋找不同樣品的差異基因可能和哪些基因功能的改變有關。Pathway分析可以找到富集差異基因的Pathway條目,尋找不同樣品的差異基因可能與哪些細胞通路的改變有關。
  • 單基因生信加點免疫組化,4分sci等你來發!
    我是你們的老朋友小木舟~今天給大家分享一篇2019年11月發表於《JOURNAL OF TRANSLATIONAL MEDICINE》的一篇單基因生信結合組化實驗的文章,雜誌IF= 4.098。可視化地構建AQP9及其共表達基因網絡(在線資料庫STRING(點擊查看);http://strin g-db.org)。對涉及的11個基因進行功能富集分析,並用氣泡圖進行可視化。ClueGO功能注釋表明,AQP9生物學過程的改變與膜和膜系統的轉運、組成成分密切相關。五、GSEA獲得ccRCC的重要相關基因和標誌通路GSEA共獲得100個顯著基因,它們之間存在正相關和負相關。
  • 生信圖文鑑賞與解析:LASSO分析
    橘子,生信組技術支持,特徵描述:
  • lnRNA生信一站式分析神器!差異表達臨床分析ceRNA網絡
    TANRIC提供查詢和分析兩大功能,提供每個樣品lncRNA表達量信息,可供分析表達量與臨床指標、耐藥性和預後相關性,可以針對候選lncRNA(已注釋或任何用戶自定義lncRNA)與功能基因mRNA或miRNA之間的相關性進行預測,還提供不同腫瘤中lncRNA表達譜的Heatmap可視化結果。
  • 高分純生信SCI套路【WGS分析實體瘤】
    今天小編帶大家看看這篇今年9月20日發表在《Nature》雜誌(IF=43)的文章《Pan-cancer whole-genome analyses of metastatic solid tumors》,作者運用全基因組測序方法闡明22種轉移性實體瘤樣本的基因組變異。
  • 生信分析幫你湊!學會深度挖掘快速發文章
    這個時候需要的是生信分析——深度的數據挖掘和分析處理,可以幫助臨床醫生不耗費大量的時間通過實驗攢數據,而是通過數據處理得到自己想要的信息,更快速地發文章。 學習哪種生信分析的工具?
  • 【審稿快】一篇純生信分析的「基礎文章」是怎麼樣設計的
    此外,基因本體分析顯示m1A下遊基因與細胞增殖有關,結果表明m1A基因與mTOR可靠連接。結論:這項研究首次證明了胃腸道癌中m1A調節子的失調及其信號傳導途徑,將有助於理解癌症中RNA的修飾。接下來作者對樣本進行了無監督主成分分析,分析結果如圖1B。接下來作者又進行了生存分析,可以看出在Kaplan-Meier分析中顯示,在LIHC中,m1A調控基因表達增高,與不良預後有關。表1展示了癌症的具體信息。因為腫瘤分期是最常用的危險分類。所以隨後評估了m1A調控基因與胃腸道腫瘤分期的關係(圖1D)。  胃腸癌中m1A調控基因的改變
  • 生信掃盲補漏筆記 | Day2(補充版)
    在昨天的版本上改善了一些描述,並補充了同源基因的內容。
  • 生信小工具:Orthofinder使用教程
    它的主要功能是,找到了正交群和直系同源物,推斷出所有正交群的根基因樹,並識別那些基因樹中的所有基因重複事件。它還為所分析的物種推斷出有根的物種樹,並將基因重複事件從基因樹比對到物種樹的分支中。另外,OrthoFinder還為比較基因組分析提供全面的統計數據。
  • 高分生信必備的TCGA資料庫一站式分析神器!真捨不得告訴你
    這款工具是發表於今年2月的生信老牌期刊Bioinformatics,20192)KRAB-ZNF表達與各種臨床病理參數的相關性;3)患者存活率與KRAB-ZNF基因表達之間的聯繫的分析和可視化;使用survminer軟體包進行生存分析,繪製Kaplan-Meier曲線。並可以各種格式下載並具有其他可自定義功能。我們以基因KRBA2在LUSC隊列中的生存分析為例,並以系統默認參數進行設定,在界面右邊出現Kaplan-Meier曲線以及基因表達的分布。可以下載png, pdf, eps, tiff四種格式。另外還可以繪製所選基因熱圖;生成log-rank檢驗表格。
  • 美吉生物 I-Sanger 生信雲 RNA-Seq 2.0 上線
    美吉生物 I-Sanger 生信雲自上線以來得到了科研用戶的廣泛好評,用戶無需配置 Linux 作業系統,安裝複雜的分析軟體,下載大量的資料庫,只需在 I -Sanger 生信雲平臺中選擇相應的分析流程和資料庫,設置計算參數,即可在線進行生信分析,生成準確、詳細、專業的交互分析報告。這大大的縮短了科研服務周期也同時也快速、高效的交付實驗結果。
  • 2019微生物組—宏基因組分析專題培訓第三期
    宏基因組分析》專題培訓第三期,為大家提供一條走進生信大門的捷徑、為同行提供一個宏基因組分析學習和交流的機會、助力學員真正理解分析原理和完成實戰分析,獨創四段式教學(3天集中授課+自行練習2周+再集中講解答疑+上課視頻回看反覆練習),「教—練—答—用」四個環節統一協調,真正實現獨立分析大數據。
  • CNS 一作大神:這個生信分析方法帶你不做實驗快速發論文!
    近期看到一篇發在《Experimental Eye Research》影響因子 3.152 的文章 ,從投稿到接收並發表共 2 個多月。 這是一篇完全基於生物信息學分析的文章,文章的思路:分析 TCGA 資料庫中的數據——利用 R 語言的 WGCNA 包——結合在線工具——發表文章。
  • 乾貨|在線玩轉LEfSe分析!
    在這個剁手的節日裡口袋被榨乾腦袋還是要保持充實的特此奉上美格學苑在線課堂的筆記聊以慰藉Metagenomic biomarker discovery and explanation作者:N Segata ,被引用次數:2964 ;由此可見LEfSe分析在生信數據處理中的重要意義
  • 多基因風險評分(PRS)分析教程
    +)2.PLINK 1.9[2]多基因風險評分(Polygenic Risk Score)分析過程概覽。低 MAF 和 INFO 的 SNPs 在執行下遊分析之前通常會被去除。我們建議移除 MAF < 1% 和 INFO < 0.8 的 SNP。
  • 基因測序行業前景及趨勢分析(附報告目錄)
    因此,該測序技術尚未完全被取代,是高通量、單分子及納米孔測序技術的補充,仍有很多公司應用該測序技術進行測序相關業務。(2)下遊應用領域逐步拓展,測序服務市場的空間越來越大隨著基因測序應用範圍廣,基因測序服務企業在技術集成上將有先發優勢。除科研服務外,基因測序可應用於腫瘤檢測、遺傳病檢測、個人基因組檢測等多方面。隨著社會各界對基因測序的關注和接受度越來越高,基因測序的應用場景也越來越廣泛。隨著下遊應用端的規模不斷加大,中遊測序服務商的市場蛋糕也將越來越大,龍頭企業的盈利能力將有所提高。
  • HUMAnN2:人類微生物組統一代謝網絡分析2
    軟體特點:可對已知和末知生物分析群體功能譜可獲得基因組、基因和通路層面的結果UniRef資料庫提供基因家族的定義MetaCyc通路基因通路的定義MinPath提供定義的最小通路集簡單的使用界面(單行命令工作流)加速序列比對採用Bowtie2加速核酸水平搜索採用Diamond
  • 真的有必要發一大堆meta分析或者純生信數據挖掘SCI嗎?
    但是懂行的人不會只看這個數字,還會看文章裡面有多少篇是論著,有多少篇是meta分析、綜述、comments、letter等等,期刊影響因子,被引用的次數,通過這些就可以看出真正是否有料。如果在這麼多SCI論文中,meta分析、綜述這些佔大多數,而且期刊影響因子都是2-3分的,那麼很容易會被人們認為是「灌水行為」,因此華西這位博士在網上引起了很大的質疑與爭議。
  • 2015年基因測序領域產業格局分析
    基因測序技術成本迅速下降(每兆鹼基)1.2 大數據分析工具的出現和進步,使得基因測序能夠進入現實應用領域針對大量基因組數據,大數據處理能力提升也為分析和解讀基因數據提供支持,測序技術及大數據分析能力的不斷提升將會推動精準醫學進入快速增長的軌道。