欢迎关注"生信修炼手册"

velvet是由EMBL-EBI开发的一款基因组组装工具,官网如下

​https://www.ebi.ac.uk/~zerbino/velvet/​

安装过程如下

wget https://www.ebi.ac.uk/~zerbino/velvet/velvet_1.2.10.tgz
tar xzvf velvet_1.2.10.tgz
cd velvet_1.2.10/
make 'MAXKMERLENGTH=127'

默认情况下,velvet支持的kmer最大长度为31bp, 如果想要只会更大长度的kmer,在编译时需要设置​​MAXKMERLENGTH​​的值。编译完成后,会生成如下两个可执行文件

  1. velveth
  2. velvetg

软件的运行过程对应的也分成两步

1. velveth

用法如下

velveth Assem 31 -shortPaired -fasta -separate left.fa right.fa

第一个参数​​Assem​​​, 代表输出结果的目录;​​shortPaired​​​指定测序类型,​​fasta​​指定输入的序列格式。

对于二代测序平台的数据,常用的测序类型包括以下两种情况

  1. short
  2. shortPaired

​short​​​用于单独数据,​​shortPaired​​用于双端数据。输入的序列文件支持以下格式:

  1. fasta/fasta.gz
  2. fastq/fastq.gz
  3. sam/bam

通过不同的参数指定输入文件的格式,​​-fasta​​​对应fasta格式;​​-fastq​​​对应fastq格式,​​-fastq.gz​​​对应fastq.gz格式,​​-fasta.gz​​​对应fasta.gz格式,​​-sam​​​对应sam格式,​​-bam​​对应bam格式。

对于双端数据,有以下两种格式

  1. interleaved
  2. separate

R1和R2端序列保存在两个文件中,就是​​separate​​​格式;​​interleaved​​​是双端序列的一种格式,R1端和R2端的序列保存在一个文件当中,每一条序列的R1端之后紧跟着就是R2端序列;对于双端测序,默认是​​interleaved​​​格式,如果是​​separate​​格式,要显示的声明。

还需要注意的一个用法就是kmer长度,在实际分析时,通常会采用一系列的kmer长度分别组装,然后挑选一个最佳的结果。velvet 的kmer参数可以设置为一个梯度,示例如下

velveth Assem 31,37,2 -shortPaired -fasta -separate left.fa right.fa

上述用法中的​​31,37,2​​表示从kmer=31开始组装,然后进行递增,步长为2,依次进行33, 35, 37共4个kmer长度的组装。这样的参数设计非常的贴合实际需求。

运行结束后,会在输出目录生成以下文件

  1. Sequences
  2. Roadmaps

2. velvetg

基本用法如下

velvetg Assembly/ -min_contig_lgth 100

第一个参数为上一步的输出目录,​​min_contig_lgth​​代表contig的最小长度,小于该长度的contig会被删除,不会出现在最终的结果中。更多的参数和用法请参考官方手册。

运行结束后,输出目录下的​​contigs.fa​​就是最终的组装结果。

扫描关注微信号,更多精彩内容等着你!

velvet软件进行基因组组装_官网