生物信息百Jia软件(十四):velvet

欢迎订阅WX众号:基因学苑,更多精彩内容等你发掘!

基因学苑Q群:32798724


通哥点评

velvet是最早的用于二代测序的序列拼接工具,拼接效果还可以,不过我觉得不如SOAPdenovo效果好。其实也不只是觉得,也测试过很多数据,SOAPdenovo可以构建更多的scaffold序列,也就是序列的完整性更好,velvet局部准确性更高,其实也很难具体说谁更好,经常是多个工具都试一遍,然后看结果之间的差别,如果所有软件结果都可以,那么拼接的准确性就很不错。

一、功能分类: 

序列拼接软件

二、软件官网:

http://www.ebi.ac.uk/~zerbino/velvet/

三、软件介绍:

velvet是比较早也比较有名的短序列拼接软件,最早发布的版本是在2007年,由欧洲分子生物学中心EBI发布。对后面的序列拼接软件产生了很大的影响。例如illumina的basespace系统,集成的就是velvet软件。它的原理和其他短序列拼接软件如SOAPdenovo和Abyss都差不多,都是基于kmer的序列拼接工具。velvet使用起来也并不难。

四、下载安装: 

wgethttps://www.ebi.ac.uk/~zerbino/velvet/velvet_1.2.10.tgz

tar -zxvf velvet_1.2.10.tgz

cd velvet_1.2.10

make

五、软件使用: 

velvet的使用分为两步,第一步是velveth利用数据构建一个hash表,第二步是velvetg进行序列拼接。

1、velveth选项参数

output_directory:输出文件夹的路径 

hash_length: 设置Kmer的大小,kmer大小对于组装的结果影响比较大,

下面是文件格式,file_format: 支持的格式有fasta(默认)、fastq、bam等。 

reads_type选项: short(默认)、shortpaired、short2、shortpaired2 … short10、shortpaired10、long、longPaired。

2、velvetg选项参数

首先是工作的目录,即为上一步骤velveth中的输出文件夹。 

-cov_cutoff选项  default: no removal 

设置最低kmer覆盖度的值。

-exp_cov 选项, default: no long or paired-end read resolution。 

期望的kmer覆盖度。如果设置了auto,则该值为所有nodes的kmer覆盖度值的median值; 该值设置为auto,则同时自动设置-cov_cutoff为auto。如果对杂合基因组进行组装时,设置auto,却很难进行预测,组装结果肯定不好。auto适用于标准的基因组测序。

-long_cov_cutoff  default: no removal

移除低long-read覆盖度的nodes。

-ins_length 

成对的short reads间的distance的期望值,即插入片段的平均长度。

-ins_length* 

代表第组shortPaired reads, 和 velveth 中的参数相对应。

-ins_length_long 

和前两个参数一样,代表longPaired reads的插入片段长度。

-ins_length_sd 此时’'代表’nothing、2、3…、long’等,和上面的3个参数相匹配;该值设置插入片段长度的标准差。有关插入片段长度和sd的如果不设置,velvet则会自动计算。velvet是将成对的reads比对到组装出来的nodes上,最后计算出一个insert size 和sd。这样做的话,可能估算的不准确,需要看velvet的运行输出信息,检测其预算是否准确。

-scaffolding  defautl: yes

是否要使用paired end信息进行scaffolds组装

-max_branch_length  default: 100

处理气泡(bubble)的参数。默认下,如果两条序列超过了100bp的位点处的kmer不一致,则将这两条序列分开成单独的contigs。

-max_divergence  default: 0.2

在一个bubble内两条branches最大的差异率(分母为较长的branch的长度)。

-max_gap_count  default: 3

在一个bubble内两条branches比对结果中,运行的最大gap数。该参数和上两个参数为重要的参数,能很大程度上影响组装结果。如果设置得松点,可分别将值设为200,0.33,5。

-min_pair_count  default: 5

默认,将两个contigs连成scaffold最少需要5对paired reads的验证。如果测序深度较大,则可以提高该值;测序深度低,则降低该值。

-long_mult_cutoff  default: 2

默认下,融合两个contigs需要最少有2个long reads验证。

-max_coverage  default: no removal

最高的覆盖度,高于此覆盖度的nodes将被删除。

-coverage_mask  default: 1

contigs最小的置信覆盖度,低于此覆盖度的contigs被maksed。

-shortMatePaired*  default: no

如果哪一个shortPaired为mate-pair library测序的结果,则需要指定该参数为yes。

-conserveLong  default: no

是否保留含有long reads的序列

-unused_reads  default: no

是否输出unused reads, 保存到 UnusedReads.fa 中。

-alignments  default: no

是否输出contig比对到参考序列的summary.

-exportFiltered  default: no

是否输出由于覆盖度的原因被过滤掉的long nodes。

-clean  default: no

是否删除所有的不能用于重新计算的中间文件

-very_clean  default: no

是否删除所有的中间文件(删除后不能重新计算)

-min_contig_lgth  default: hash length * 2

输出结果中最小的contigs长度

-amos_file  default: no

六、使用案例: 

velvethoutput31-shortPaired -fastq fragment1.reads.fastq   -shortPaired2 -fastq fragment2.reads.fastq

velvetg output -exp_cov auto -cov_cutoff auto -shortMatePaired3yes-shortMatePaired4yes-cleanyes-scaffoldingyes-amos_fileyes

七、结果解析:

contigs.fa 即为我们最终需要的拼接结果文件,长度2倍长于kmer的contigs。参数-scaffolding决定生成的该fasta文件是否包含scaffold序列。

stats.txt 用于决定覆盖度cutoff的统计表

PreGraph 初始的de vruijin图

Graph2 最终的de bruijin图 关于该文件中内容的解释,请见velvet PDF manual。

velvet_asm.afg AMOS兼容的组装文件,能用于AMOS基因组组装软件包

Log velvet的运行记录。

你可能感兴趣的:(生物信息百Jia软件(十四):velvet)