2022-06-14eggNOG注釋及cluster Profiler富集

eggNOG網(wǎng)站注釋蛋白序列得到文件query_seqs.fa.emapper.annotations

python環(huán)境

#git clone https://github.com/Hua-CM/HuaSmallTools.git下載注釋包(parse_go_obofile.py 和 parse_eggNOG.py)

#wget http://purl.obolibrary.org/obo/go/go-basic.obo下載Go數(shù)據(jù)庫的obo文件

輸入數(shù)據(jù)準(zhǔn)備

首先需要去GO下載GO的obo文件,這里我使用go-basic.obo然后?使用parse_go_obofile.py可以把obo文件解析為如下格式:

$python parse_go_obofile.py -i go-basic.obo -o go.tbold


$less go.tbold |awk 'BEGIN{FS="\t";OFS="\t"}{print $2,$1,$3}' > tmp && mv tmp go.tb (必不可少的一步柄错,不轉(zhuǎn)化parse_eggNOG.py會(huì)報(bào)錯(cuò), go.tb為parse_eggNOG.py用臨時(shí)文件呜达,富集時(shí)還是用go.tbold文件)

$python parse_eggNOG.py -i query_seqs.fa.emapper.annotations \

? ? ? ? ? ? ? ? ? ? ? -g go.tb \

? ? ? ? ? ? ? ? ? ? ? -O ath,osa \

? ? ? ? ? ? ? ? ? ? ? -o ./? #生成GO和KO數(shù)據(jù)庫

--------------------------參數(shù)說明----------------------------------------------------------

「-i」 eggNOG的注釋結(jié)果

「-g」 上一步根據(jù)obo解析出來的文件

「-O」 參考物種(只用于KEGG注釋饱亮,使用KEGG三字母物種縮寫表示).設(shè)置這個(gè)參數(shù)的原因是我做KEGG富集的時(shí)候發(fā)現(xiàn)有的基因會(huì)出現(xiàn)在非程睿荒唐的通路上,比如某個(gè)植物基因富集到了癌癥的相關(guān)通路,后來發(fā)現(xiàn)原因是有的比較基礎(chǔ)的KO可能與癌癥通路有關(guān),如果不使用參考物種椎工,直接用KO去尋找map的話就會(huì)出現(xiàn)上述的情況。這里使用參考物種可以把沒有出現(xiàn)在參考物種中的通路給過濾掉。植物我選擇擬南芥和水稻作為參考晋渺,同樣的如果做非模式動(dòng)物的話镰绎,可以考慮設(shè)置一些動(dòng)物物種來排除富集到植物的通路上

「-o」 輸出結(jié)果文件夾。會(huì)在該文件夾生成GOannotation.tsv和KOannotation.tsv兩個(gè)文件

--------------------------------------------------------------------------------------------------

#(在界面直接跑python parse_eggNOG.py -i query_seqs.fa.emapper.annotations -g go.tb -O ath,osa -o ./)?處理的結(jié)果文件有兩個(gè):「GOannotation.tsv」和「KOannotation.tsv」 分別對應(yīng)GO注釋和KO注釋,使用這兩個(gè)文件就可以進(jìn)行富集分析了

富集分析

#R環(huán)境

library(clusterProfiler)

KOannotation <- read.delim("KOannotation.tsv", stringsAsFactors=FALSE)

GOannotation <- read.delim("GOannotation.tsv", stringsAsFactors=FALSE)

GOinfo <- read.delim("go.tbold", stringsAsFactors=FALSE)

#根據(jù)具體比較組來木西,上面步驟不需要重做畴栖。

gene_list <- read.csv("test.txt",header=FALSE) ###提供差異基因數(shù)據(jù)集,不要表頭

gene_list <- gene_list$V1 ####提取基因所在列八千,如gene_list <- gene_list$Row.names吗讶,根據(jù)實(shí)際情況提取恋捆;此處為類型轉(zhuǎn)換照皆,因?yàn)閑nricher識別的gene_list為facter,charater類型沸停,而不識別data.drame膜毁;轉(zhuǎn)化為character類型的話#gene_list <- as.character(gene_list$V

Go富集

GOannotation = split(GOannotation, with(GOannotation, level))

df_GO <- enricher(gene_list,TERM2GENE=GOannotation[['MF']][c(2,1)],TERM2NAME=GOinfo[1:2])

df_GO_df <- as.data.frame(df_GO) ###易讀模式,查看GO富集結(jié)果

dotplot(df_GO)

####柱狀圖用barplot(df_GO, showCategory = 10)愤钾,10表示選擇前10個(gè)term###

###做有向無環(huán)圖plotGOgraph(df_GO)###要先安裝topGo####

####輸出表格write.csv(df_GO, "0_up1.csv")###

df_GO <- enricher(gene_list,TERM2GENE=GOannotation[['CC']][c(2,1)],TERM2NAME=GOinfo[1:2])

dotplot(df_GO)

df_GO <- enricher(gene_list,TERM2GENE=GOannotation[['BP']][c(2,1)],TERM2NAME=GOinfo[1:2])

dotplot(df_GO)

KEGG富集

enricher(gene_list,TERM2GENE=KOannotation[c(3,1)],TERM2NAME=KOannotation[c(3,4)])

df_KO <- enricher(gene_list,TERM2GENE=KOannotation[c(3,1)],TERM2NAME=KOannotation[c(3,4)])

dotplot(df_KO)


優(yōu)缺點(diǎn)

優(yōu)點(diǎn)

理論上針對所有有基因組蛋白序列的物種都可以注釋瘟滨,甚至沒有基因組但是有參考轉(zhuǎn)錄本也可以注釋

相對來說沒有用到特別多的依賴工具,兩個(gè)python腳本也只使用了最基本的包能颁。

缺點(diǎn)

中間需要解析eggNOG的結(jié)果文件杂瘸,我個(gè)人用的python寫的腳本,一是與R銜接不連貫伙菊,二是速度較慢败玉,主要是我考慮做一個(gè)背景數(shù)據(jù)集能用很久,所以偷懶沒有對腳本的性能進(jìn)行優(yōu)化镜硕。

無法一張表完成基因运翼、轉(zhuǎn)錄本等多層次的富集信息。主要是因?yàn)槲易龅闹参锖芏鄷r(shí)候基因組質(zhì)量不高谦疾,根本沒有多個(gè)轉(zhuǎn)錄本的注釋南蹂,所以就沒考慮這一問題。


引用:https://mp.weixin.qq.com/s/Mr3YLoc_-Y1WeLKJku1TzQ

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末念恍,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子晚顷,更是在濱河造成了極大的恐慌峰伙,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件该默,死亡現(xiàn)場離奇詭異瞳氓,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)栓袖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門匣摘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來店诗,“玉大人,你說我怎么就攤上這事音榜∨尤常” “怎么了?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵赠叼,是天一觀的道長擦囊。 經(jīng)常有香客問我,道長嘴办,這世上最難降的妖魔是什么瞬场? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮涧郊,結(jié)果婚禮上贯被,老公的妹妹穿的比我還像新娘。我一直安慰自己妆艘,他們只是感情好刃榨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著双仍,像睡著了一般枢希。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上朱沃,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天苞轿,我揣著相機(jī)與錄音,去河邊找鬼逗物。 笑死搬卒,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的翎卓。 我是一名探鬼主播契邀,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼失暴!你這毒婦竟也來了坯门?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤逗扒,失蹤者是張志新(化名)和其女友劉穎古戴,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體矩肩,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡现恼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片叉袍。...
    茶點(diǎn)故事閱讀 39,779評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡始锚,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出喳逛,到底是詐尸還是另有隱情瞧捌,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布艺配,位于F島的核電站察郁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏转唉。R本人自食惡果不足惜皮钠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望赠法。 院中可真熱鬧麦轰,春花似錦、人聲如沸砖织。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽侧纯。三九已至新锈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間眶熬,已是汗流浹背妹笆。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留娜氏,地道東北人拳缠。 一個(gè)月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像贸弥,于是被迫代替她去往敵國和親窟坐。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容