「基因组组装」用AMOS/minimus2合并两个contig

缘起

这个软件我是在一篇文献中看到,里面提到可以用minimus2将两个存在overlap的BAC文库进行合并,因此我尝试复现这个过程

2013053-36a2236bb6cec8d3.png
文献实例

安装部分

AMOS目前已经不再更新了,最后一个版本是3.1.0,托管在https://sourceforge.net/projects/amos/, 需要打开网页下载,然后传到服务器上。

我们需要通过源码进行安装,安装过程中要解决一些警告和报错。

tar xf amos-3.1.0.tar.gz
./configure --prefix=/opt/biosoft/amos-3.1.0
make
make installl

第一次运行配置时,它可能会提示如下的问题,这里我们只需要用到mininus2,所以只要安装MUMMER,让它出现在环境变量中即可。

2013053-8e32d94251eee857.png
警告

在编译过程中,由于这个软件有些古老,所以还会遇到如下报错

2013053-57052df782f7f122.png
报错

解决方案就是编辑src/Align/find-tandem.cc文件,在开头增加#include <getopt.h>

如果你安装的是MUMMER4,那么还需要修改mininus2里的代码,将原来的-maxmatch改成--maxmatch

2013053-1e0f4d620712ed35.png
修改代码

以及如果你的MUMMER安装是更改了prefix,那么还需要修改show-coords和delta-filter的路径,

2013053-c417c37228200cd4.png
image.png

建议做如下修改,因为make-consensus_poly对scaffold中gap处理效果比较好

41: $(BINDIR)/make-consensus -B -e $(CONSERR) -b $(BANK) -w $(WIGGLE)

41: $(BINDIR)/make-consensus_poly -B -e $(CONSERR) -b $(BANK)

实践

在NCBI上根据EU382072.1EU382073.1下载两个序列

2013053-9ef020273065dd72.png
EU382072.1
2013053-a7727315fcaf605e.png
EU382073.1

第一步: 合并序列

cat EU382072.1.fasta EU382073.1.fasta > input.seq

第二步: 将FASTA格式转成AMOS格式

toAmos -s input.seq -o input.afg

第三步: 调用minimus2

minimus2 input -D REFCOUNT=1

输出结果:

  • input.fasta : 成功合并的contig
  • inputsingletons.seq : 未成功合并的contig

成功的合并出293k的序列。

$ seqkit stat input.fasta 
file         format  type  num_seqs  sum_len  min_len  avg_len  max_len
input.fasta  FASTA   DNA          1  293,737  293,737  293,737  293,737

minimap2将原来的序列和组装结果进行比对,并按照「R绘图」minimap2的PAF文件如何进行可视化?对结果进行可视化

2013053-e0e16d858a2271a0.png
image.png

最后补充下minimus2的用法说明:

 minimus2 prefix  \ # 输入文件的前缀
   -D REFCOUNT=n  \  #  第一个集合中序列数
   -D OVERLAP=n   \  #  overlap至少有多少个碱基,默认40
   -D CONSERR=f   \  # 允许的错配率,默认是0.06
   -D MINID=n     \  # 联配序列的最小相似比例,默认是94,对应show-coord的-I参数
   -D MAXTRIM=n      #  序列最多允许修剪多少个碱基,默认20

其中REFCOUNT的作用是确定序列应该如何进行比对,如果你有两个输入文件,第一个文件有N条序列,第二个文件有M条序列。REFCOUNT=N时,表明以第一个文件中序列作为参考序列,让第二个文件中序列和第一个文件进行比对。如果REFCOUNT=0,就是all-vs-all, 也就是所有序列和所有序列进行比较。

参考资料

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值