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(Metagenome Analyzer)是宏基因组学进行物种和功能研究的常用软件,实际上现在的Diamond+MEGAN6已经是一套比较完整的物种和功能注释流程了. 但是由于各种原因,我们 ...

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

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

  3. linux安装php

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

  4. linux安装oracle11g

    准备oracle安装文件 Oracle11gR2包含两个文件linux_11gR2_database_1of2.zip和linux_11gR2_database_2of2.zip,将这两个文件通过SS ...

  5. TODO:Linux安装PHP MongoDB驱动

    TODO:Linux安装PHP MongoDB驱动 PHP利于学习,使用广泛,主要适用于Web开发领域. MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统 ...

  6. Symantec Backup Exec 2010 Agent For Linux安装

    以前写过一篇文章介绍过Symantec Backup Exec 2012 Agent For Linux安装安装,今天介绍一下Symantec Backup Exec 2010 Agent For L ...

  7. Symantec Backup Exec 2012 Agent For Linux安装

    Backup Exec 2012 介绍 Backup Exec 2012 是一种为虚拟和物理环境提供保护的集成产品,能够简化备份和灾难恢复,并提供了无可匹敌的恢复功能.借助于强大的 Symantec ...

  8. linux 安装jdk

    1.Linux安装JDK步骤1. 先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm) ,推荐SUN的官方网站www.sun.com,下载后放在/home目录中,当然其它地方也 ...

  9. Hadoop Linux安装

    Hadoop Linux安装 步骤流程 1.硬件准备 2.软件准备(推荐CDH) 3.将Hadoop安装包分发到各个节点下 4.安装JDK 5.修改/etc/hosts配置文件 6.设置SSH免密码登 ...

随机推荐

  1. Java集合 - 集合知识点总结概述

    集合概述 概念:对象的容器,定义了对多个对象进项操作的的常用方法.可实现数组的功能. 和数组的区别: 数组长度固定,集合长度不固定. 数组可以存储基本类型和引用类型,集合只能存储引用类型. 位置: j ...

  2. Convolutional Neural Network-week2编程题1(Keras tutorial - 笑脸识别)

    本次我们将: 学习到一个高级的神经网络的框架,能够运行在包括TensorFlow和CNTK的几个较低级别的框架之上的框架. 看看如何在几个小时内建立一个深入的学习算法. 为什么我们要使用Keras框架 ...

  3. MySQL:怒刷牛客网“sql实战”

    MySQL:怒刷牛客网"sql实战" 在对MySQL有一定了解后,抽空刷了一下 牛客网上的 数据库SQL 实战,在此做一点小小的记录 SQL1 查找最晚入职员工的所有信息 sele ...

  4. httpclient 登录成功后返回的cookie值访问下一页面

    HttpClient4.x可以自带维持会话功能,只要使用同一个HttpClient且未关闭连接,则可以使用相同会话来访问其他要求登录验证的服务(见TestLogin()方法中的"执行get请 ...

  5. UltraSoft - Alpha - Scrum Meeting 3

    Date: Apr 15th, 2020. 会议内容为 贡献分确定与进度汇报. Scrum 情况汇报 进度情况 组员 负责 昨日进度 后两日任务 CookieLau PM.后端 学习前后端分离技术的项 ...

  6. 2020BUAA软工热身作业

    2020BUAA软工热身作业 17373010 杜博玮 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 热身作业 我在这个课程的目标是 学习软件工 ...

  7. linux安装后ping不通局域网其他主机的解决方式

    安装了linux后尝试进行机器间的相互通讯,发现自己虚拟机并不能查看ip地址,也不能够ping通任何一台局域网内的主机 上网查了一下发现是网卡并没有打开,需要进行如下配置 查看ls 一下/etc/sy ...

  8. PHP笔记3__简易计算器

    <?php header("Content-type: text/html; charset=utf-8"); error_reporting(E_ALL & ~E_ ...

  9. 百亿级小文件存储,JuiceFS 在自动驾驶行业的最佳实践

    自动驾驶是最近几年的热门领域,专注于自动驾驶技术的创业公司.新造车企业.传统车厂都在这个领域投入了大量的资源,推动着 L4.L5 级别自动驾驶体验能尽早进入我们的日常生活. 自动驾驶技术实现的核心环节 ...

  10. 执行新程序 execve()

    新程序的执行 一:execve() 之所以叫新程序的执行,原因是这部分内容一般发生在fork()和vfork()之后,在子进程中通过系统调用execve()可以将新程序加载到子进程的内存空间.这个操作 ...