1. 程式人生 > 實用技巧 >MEGAN4,MEGAN5和MEGAN6的Linux安裝和使用

MEGAN4,MEGAN5和MEGAN6的Linux安裝和使用

目錄
MEGAN(Metagenome Analyzer)是巨集基因組學進行物種和功能研究的常用軟體,實際上現在的Diamond+MEGAN6已經是一套比較完整的物種和功能註釋流程了。

但是由於各種原因,我們在流程中使用的並非最新版。不同版本的MEGAN使用方法差別較大,尤其在命令列模式下。網上的關於這方面的資料也寥寥無幾,這裡簡單記錄下使用方法,主要是針對Linux平臺的使用。

MEGANGUI版相對友好,如果你在Windows平臺使用過該軟體,那麼在Linux上使用和理解起來相對容易些。

MEGAN 4

歷史悠久,基本上已經淘汰了。命令列直接配置引數即可,貌似也不要license


示例如下:

xvfb-run.sh --auto-servernum --server-num=1  \\
MEGAN +g -x \\
"import blastfile=all.blastout_m8.add_taxoid meganfile=all.rma ;\\
recompute toppercent=5;\\
recompute minsupport=1;\\
update;\\
collapse rank=Species;\\
update;\\
select nodes=all;\\
export what=CSV format=readname_taxonid separator=tab file=all.result;\\
update;\\
close"

Megan的引數非常之多,以上僅列出了一些最主要的引數,+g表示開啟非圖形模式(即命令列模式),-x後接引號內的MEGAN引數,更多可參考MEGAN4 Manual。除了匯入、匯出之外,其中toppercent表示取比對數目的前百分之多少,minsupport表示至少取一條,collapse表層級摺疊,select nodes表示選擇方式。命令列中引數是一行一行處理的,所以要加入updates來連結命令。

MEGAN 5

主頁download。需要用教育網郵箱註冊獲取license,將License certificate內容新建一個名為MEGAN5-academic-license.txt

的檔案儲存。命令列使用時通過-L引數來指定它。
另外,MEGAN5需要新建一個引數配置檔案,類似MEGAN4中的引號內容,以便MEGAN解析。為避免不同版本的差異,更多引數最好檢視MEGAN5 Manual

例如,製作引數檔案command.txt如下:

load taxRefSeqFile='./MEGAN/database/prot_acc2tax-Jul2019X1.abin';
import blastFile=Redtide.blastnr.all fastaFile=Redtide.fa  meganFile=tab.rma blastFormat=BlastTAB;
recompute toppercent=5;
recompute minsupport=1;
update;
collapse rank=Species;
update;
select nodes=all;
export what=CSV format=readname_taxonid separator=tab file=tab.result;
update;
quit;

網上有些很舊的資料,如http://seqanswers.com/forums/showthread.php?t=43535載入的是load taxGIFile=gi_taxid_prot.bin檔案,但是GINCBI已經不再維護了,所以目前這個檔案想下都下不到。包括blast比對的結果也不再顯示GI號,僅顯示accessionID。關於ID的解釋,生信技能樹有一篇總結比較全面,不瞭解的可以參考下。比較一下NCBIblast結果以前的和現在的區別:

現在MEGAN官網能下的資料庫如下(與MEGAN6共用):
https://software-ab.informatik.uni-tuebingen.de/download/megan6/welcome.html


所以在引數檔案中務必使用taxRefSeqFile=引數,而非taxGIFile=

命令列執行

xvfb-run.sh --auto-servernum --server-num=1 /software/bin/MEGAN/MEGAN -L MEGAN/MEGAN5-academic-license.txt -g -E -c command.txt

# 或
xvfb-run.sh --auto-servernum --server-num=1 /software/bin/MEGAN/MEGAN -L MEGAN/MEGAN5-academic-license.txt -g -E < command.txt

使用xvfb是為了虛擬化螢幕,在Linux上我們不想要MEGAN顯示圖形介面,阻止視窗彈出,只要它在執行就行了。不過這個工具如果在你們叢集平臺上沒裝,而你又沒root許可權的話,就得搗鼓半天了。

執行megan這一步一開始生成rma檔案,匯出後可得到accessionIDtaxID的對應關係。

接下來可以寫個指令碼通過Taxonomy資料庫(下載地址)中的names.dmpnodes.dmp檔案得到物種註釋的結果了。

MEGAN 6

MEGAN6Community EditionUltimate Edition兩個版本(download),因為後者需要license key,我試了下社群版的,貌似不支援Linux平臺。

$ sh MEGAN_Community_unix_6_17_0.sh
No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be at least 11.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.

最終版本的MEGAN6命令列模式後續如果有需求再試試吧,應該和5差不多,因為兩者的資料庫檔案都通用了。具體可參考MEGAN6 Manual

Ref:
http://mp.weixin.qq.com/s?__biz=MzIwNTEwMTUyOQ==&mid=2649693810&idx=2&sn=0264e78fac1dc6ffd3b8a3f6027e3669&chksm=8f2dbec4b85a37d23526e1996837f5f1ebcd41c220dde631855e6d27278c349fc1890ff45aba&scene=4#wechat_redirec
http://megan.informatik.uni-tuebingen.de/t/welcome-to-megan-metagenome-analyzer-community/8
http://blog.sina.com.cn/s/blog_83f77c940102wh7j.html
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC1800929/pdf/377.pdf