用罗氏454测序得到的序列用newbler拼接的效果最好,而用短序列拼接软件velvet拼接效果很差,所以不能将454的原始reads和Illumina产生的reads合到一起后用velvet进行拼接。在用newbler和velvet分别拼接454和Illumina的reads得到contigs之后,我们就需要将两者的contig再合并起来,得到更好的拼接结果。这里就介绍一个简单易用的软件minimus2。
minimus2是amos拼接软件包里面的一个组件,它的功能就是将两组contig进行合并,延伸contig的长度,减少contig的数量。Amos是A Modular, Open-Source whole genome assembler的缩写,致力于打造成一个拼接软件的基础软件系统。minimus2用的是基于nucmer overlap检测的算法,速度上比Smith-Waterman hash-overlap的算法要快,下面就介绍一下用法。
首先当然是下载amos软件包进行安装,下载地址为:http://sourceforge.net/projects/amos/files/
安装啥的就不说了,根据说明来就行。安装完成之后,minimus2软件位于amos安装文件夹下的bin里面。在运行minimus2之前首先要准备好文件,比如现在有s1.fa和s2.fa两组包含contig的文件,首先要知道里面包含的contig数目,针对fasta格式,用
grep -c "^>" s1.fa s2.fa 命令得到,比如分别为100和200个contig。
然后用cat命令合并到一个文件:
cat s1.fa s2.fa >s1_s2.fa
再用amos里面的另一个软件toAmos转换成Amos格式,这个软件也位于bin文件夹下面
./toAmos -s s1_s2.fa -o s1_s2.afg 这里的-s是指输入的为fasta格式。
然后就可以运行minimus2了
minimus2的运行参数为:
minimus2 prefix \ -D REFCOUNT=n \ # Number of sequences is the first set -D OVERLAP=n \ # Minimum overlap (Default 40bp) -D CONSERR=f \ # Maximum consensus error (0..1) (Def 0.06) -D MINID=n \ # Minimum overlap %id for align. (Def 94) -D MAXTRIM=n # Maximum sequence trimming length (Def 20bp) 最简单的命令为: ./minimus2 s1_s2 -D REFCOUNT=100
这里只要告诉文件名(不要后缀)和作为参考序列的第一组contig的数目就可以了。会生成一堆以s1_s2开头的文件,其中s1_s2.fasta就是合并之后得到的contig文件。
大功告成!
请问,你知道怎么把solexa的pair-end的fastq格式的数据转换成amos能理解的格式吗?我找了好几天也没找到这方面的资料~
Maybe CLC Genomics can do this transformation
楼主.您安装完AMOS之后minmus就在bin里面了么?我们安转完之后大多数包都在,但是toAMOS和minmus2怎么没有呢?需要之前安装什么其他的包么?多谢!
@ting 你好,我安装完就都已经在bin里面了,我安装的是amos3.0.0的包,你看看是否一样
我下的版本更高…我下个低的再试试看吧!多谢啦!
问一下,configure时缺少show-coords在哪里下载,楼主知道不?
@chengg 这个是MUMmer里面的一个软件,可以先安装MUMmer
嗯 谢谢楼主 装好了
楼主,不知道为什么,现在装amos装不上了,configure的时候没有错误,make的时候出现
make[3]: *** No rule to make target `../../src/Align/libAlign.a’, needed by `hash-overlap’. Stop.
make[3]: *** Waiting for unfinished jobs….
然后就退出编译了,楼主知道为什么么,是不是我少装了什么?网上说No rule to make target是因为makefile里面路径没写对,不知道怎么改,郁闷
楼主你好!
我现在有小部分454数据。。用Newbler装成了contigs(大约9.4M contigs)。。然后还有大量Solexa的数据。。用SOAPdenovo也装成了contigs(大约装成了134Mcontig)。。现在我用amos的minimus2合并二者。。结果才得到了17K的合并后fasta。。悲剧。。这是什么情况呢?麻烦楼主有空解答一下。。谢谢:D
@Enhua Xia 你测的是一样的东西吗,为什么454和solexa测出来的大小差那么多呢?minimus2合并不起来说明两者之间能相互覆盖的太少了,没有合并的都被丢弃了
嗯 是同一个种 当时就只测了一小点454 可是不用吧 又心疼浪费钱
用吧454又有点少,悲剧
能给点意见吗
怎么结合二者用呢?
谢谢
@Enhua Xia 要不要用454的数据看数据的质量和你后面的处理了。如果对PE的数据有补充的话可以用一下,先把reads相互map一下吧,看看重叠怎么样