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

【宏基因组】MEGAN4,MEGAN5和MEGAN6的Linux安装和使用的更多相关文章

  1. MEGAN4,MEGAN5和MEGAN6的Linux安装和使用

    目录 MEGAN 4 MEGAN 5 MEGAN 6 MEGAN(Metagenome Analyzer)是宏基因组学进行物种和功能研究的常用软件,实际上现在的Diamond+MEGAN6已经是一套比 ...

  2. MetaPhlAn 2:宏基因组进化分析

    描述 MetaPhlAn是分析从物种水平分辨率宏基因组鸟枪法测序数据的微生物群落(细菌,古细菌,真核细胞和病毒)的组成的计算工具.从版本2.0,MetaPhlAn还能够确定具体的菌株(在将样品含有先前 ...

  3. 微生物组学数据分析工具综述 | 16S+宏基因组+宏病毒组+宏转录组--转载

    转载:https://mp.weixin.qq.com/s/xsL9GuLs7b3nRF8VeRtinQ 建立在高通量测序基础上的微生物群落研究,当前主要有三大类:基于16S/18S/ITS等扩增子做 ...

  4. 宏基因组扩增子图表解读2散点图:组间整体差异分析(Beta多样性)

    散点图 数据点在直角坐标系平面上的分布图.在宏基因组领域,散点图常用于展示样品组间的Beta多样性,常用的分析方法有主成分分析(PCA),主坐标轴分析(PCoA/MDS)和限制条件的主坐标轴分析(CP ...

  5. 详解Linux安装GCC方法

    转载自:http://blog.csdn.net/bulljordan23/article/details/7723495/ 下载: http://ftp.gnu.org/gnu/gcc/gcc-4. ...

  6. 为你详解Linux安装GCC方法

    下载: http://ftp.gnu.org/gnu/gcc/gcc-4.5.1/gcc-4.5.1.tar.bz2浏览: http://ftp.gnu.org/gnu/gcc/gcc-4.5.1/查 ...

  7. Linux安装fcitx输入法(命令安装)

    Linux安装fcitx输入法(命令安装)   打开终端安装输入法 sudo apt-get install im-switch libapt-pkg-perl fcitx fcitx-table-w ...

  8. 搜狗输入法linux安装 以及 12个依赖包下载链接分享

    搜狗输入法linux安装版,先安装各种依赖包,大概12个依赖,可能中途还需要其他依赖,可以效仿解决依赖问题.如图这12个文件要是手动点击下载,那也太笨点了,我们要用shell命令批量下载.命令如下:w ...

  9. linux安装php

    接上篇:linux安装apache 一.安装php 先安装libxml2库 [root@ctxsdhy package]# yum -y install libxml2-devel 最新地址在:htt ...

随机推荐

  1. Java 是编译型语言还是解释型语言?

    Java首先由编译器编译成.class类型的文件,这个是java自己类型的文件.然后在通过虚拟机(JVM)从.class文件中读一行解释执行一行.因此Java是一种半编译半解释的语言,理解这种意思即可 ...

  2. 记一次 .NET 某资讯论坛 CPU爆高分析

    大概有11天没发文了,真的不是因为懒,本想前几天抽空写,不知道为啥最近求助的朋友比较多,一天都能拿到2-3个求助dump,晚上回来就是一顿分析,有点意思的是大多朋友自己都分析了几遍或者公司多年的牛皮藓 ...

  3. oo第一单元学习总结

    写在开头: 第一次接触面向对象思想和java语言,在学习以及完成作业的过程经历了一个比较痛苦的过程, 虽然在每次写作业时总是会有一些小小的抱怨,虽然写出的代码还是很差, 但是看到自己有所进步,还是感觉 ...

  4. Python import urllib2 ImportError: No module named 'urllib2'

    python3 import urllib2 import urllib2 ImportError: No module named 'urllib2' python3.3里面,用urllib.req ...

  5. Vue3.x 关于组件的那些变化(新手必看篇)

    一.组件内的 data 为什么总是函数形式? 我们试着先做一个计数器案例,把 data 的返回形式修改成一个对象.具体的代码如下: <template> <div> <b ...

  6. 『学了就忘』Linux基础命令 — 22、Linux中的硬链接和软链接

    目录 1.文件和目录的基本存储 2.In命令介绍 (1)我们来看看ln命令的基本信息 (2)ln命令的基本格式 3.创建硬链接 (1)如何创建硬链接 (2)硬链接特征 (3)硬连接原理 4.创建软链接 ...

  7. Jenkins MultiJob

    前提:项目有十几个服务每次发版/更新服务需要一个个去编译 目的:希望能够建立一个任务一次构建可以批量编译很多服务,并且需要输入一个参数指定编译的分支 需要插件: MultiJob 安装插件 1.在Je ...

  8. 说Redis

    一:简单介绍 Redis(Remote Dictionary Server 远程字典服务器) key-value 内存数据库 key是一个string value可以是string,list,hash ...

  9. Linux&C 线程控制 课后习题

    Q1:多线程与多进程相比有什么优势? 多进程程序耗费的资源大,因为fork()的时候子进程需要继承父进程的几乎所有东西,但是多线程程序线程只继承一部分,即自己的私有数据,例如自己的线程ID,一组寄存器 ...

  10. 【java+selenium3】自动化截图 (十四)

    一.截图 1. Firefox浏览器截图 FirefoxDriver firefoxDriver = new FirefoxDriver(); firefoxDriver.getScreenshotA ...