如何基於Perl實現批次蛋白名轉換為基因名?以做後續GO與KEGG分析

皮蛋笔记發表於2024-05-29

  眾所周知,在完成蛋白組學組間差異蛋白篩選後,往往要做GO與KEGG功能富集分析,這就需要我們首先將蛋白名轉換為基因名,或者找出基因ID。將蛋白名轉化為基因名可能涉及不同的轉換工具或資料庫,這裡有幾種常見的方法:

①UniProt資料庫:UniProt資料庫提供了蛋白和其對應基因的關聯資訊。可以透過查詢UniProt資料庫來找到蛋白名對應的基因名。

② 基因註釋工具:一些基因註釋工具(如DAVID、Enrichr等)能夠接受蛋白名作為輸入,並返回與之關聯的基因資訊。

③文獻和資料庫搜尋:透過文獻或特定的生物資訊學資料庫(如NCBI、Ensembl等),可以手動查詢蛋白名和基因名之間的關聯。

④轉錄本和基因組資料庫:有時蛋白和基因之間的對映可以透過轉錄本和基因組序列的對應關係來確定。

以上四種方法雖然可以實現蛋白名與基因名的轉換,但是隻適應於小樣本的處理,如果差異有幾百或者上千個蛋白,那麼用以上方法處理起來會非常麻煩。下面我們將介紹如何用perl進行批次處理。原始碼可關注本公眾號(皮蛋筆記)私信獲取。

1、首先下載並安裝Perl指令碼

網頁搜尋Perl直接進入即可(Strawberry Perl for Windows),點選下載並安裝。

2、準備所需檔案

Protein name.txt為篩選到的差異蛋白檔案如下圖所示,包含蛋白名稱或者蛋白ID,本例中所使用的為蛋白名稱。uniprot_Human.tsv為從uniprot資料庫下載的物種蛋白資料庫,如何下載之前筆記已經講述。addSymbol檔案就是Perl指令碼,可關注本公眾號(皮蛋筆記)私信獲取。

3.開啟addSymbol檔案,更改程式碼中的檔名,以輸入、輸出檔案

4.在電腦搜尋框中輸入“cmd”,開啟命令提示符。

5.如下圖所示,輸入“cd ”(cd後有空格),將檔案所在工作路徑複製或貼上至cd後面,並按下“enter”開啟工作路徑

6.手動輸入addSymbol.pl檔名,按下“enter”鍵執行即可得結果。

7.可以發現在資料夾裡已經多了結果檔案,開啟進行後處理即可

在獲取蛋白質的基因的名稱後,需要獲取基因的ID以為後續進行GO和KEGG分析,下篇筆記將會展示如何應用R語言進行GO分析,敬請關注與期待。本篇內容程式碼與檔案見以下連結

連結:https://pan.baidu.com/s/1oQ9dqOeHdO5I08skBt40VQ

提取碼:r3ml

內容轉自公眾號:皮蛋筆記,歡迎關注,獲取第一時間諮詢和相關資料。

相關文章