查看原文
其他

生物信息百Jia软件(十八):spades

王通 基因学苑 2022-03-29

通哥点评
SPAdes序列拼接软件是序列拼接软件中的后起之秀,拼接效果很不错,目前很多拼接软件已经都不在更新了,而spades却持续进行更新。该软件使用非常简单,并且支持多种数据格式,还支持混合拼接,使用起来非常方便。对于小基因组拼接有很好的拼接效果,不过经过更新,目前对于大基因组,甚至多倍体的基因组也有不错的效果。

一、功能分类:

序列拼接

二、软件官网:

http://bioinf.spbau.ru/spades
https://github.com/ablab/spades

三、软件介绍:

SPAdes是一款非常好用的软件,而且该软件不仅支持illumina测序数据,而且还可以用于Ion Torrent测序数据,PacBio测序数据、sanger数据,Nanopore。并且可以加入其它序列拼接结果,作为辅助。使用简单,非常适合用于混合组装来改善拼接效果。软件使用起来也并不难。因为之前对于Ion Torrent测序数据并没有官网软件,这里经过测试,发现SPAdes非常适合Ion Torrent数据的拼接。而且,SPAdes还可以用于二倍体杂合基因组的拼接。

四、下载安装:

git clone https://github.com/ablab/spades.git

五、软件使用:

spades.py 或者敲python spades.py,软件会屏幕输出帮助信息。
首先 -o 为输出目录,需要提前建立一个目录,否则会报错
-sc 指定输入文件为singlecell 单细胞测测序数据
--iontorrent 指定输入文件类型为Ion Torrent测序数据
--test 会以软件自带的测试数据运行程序
-h或者--help 给出帮助信息

下面的数据用来指定输入文件。
--pe<#>-1,其中井号表示第几个文库,第一pairend文库就可以写成--pe1-1后面接reads1文件。
--pe1-2 reads2文件。以此类推,如果是大片段的matepair文库,就使用--mp1-1,--mp1-2。
如果觉得matepair文库质量很高,文库的SD偏差小,可以使用hqmp选项。
最新版本的SPAdes,支持illumina 最新的NextSeq® Long Mate Pair libraries,所以可以使用--nxmate选项。--sanger指定sanger数据输入,
--pacbio指定pacibo数据输入,
--nanopore 指定nanopore数据输入。
--trusted-contigs 指定输入可信的其他软件拼接的contig结果
--untrusted-contigs 指定输入不一定可信的其他软件拼接的contig结果
SPAdes是不支持这些数据单独拼接的,这些都是辅助上面短序列拼接的结果。

下面一批选项用于控制流程执行的功能
--only-error-correction 只做数据纠错
--only-assembler    只组装,不做数据纠错
--careful    减少错误和插入缺失,添加此选项,会消耗更多的时间

接下来是一些高级选项
--dataset SPAdes是可以将数据写到YAML格式的配置文件中的,适合一次很多数据。不过YAML格式也不容易阅读,一般我们还是直接在命令行直接写
-m 用于内存限制
-t 控制线程数,默认16个
-k kmer数,一次可以输入多个,用逗号分隔,kmer最大为127,一般自动选择即可
--cov-cutoff 覆盖率阈值,过滤掉费盖度过低的结果,默认不执行
--phred-offset phred质量体系,在数据纠错中会用到,现在illumina数据一般采用phred 33.

六、使用案例:

spades.py --pe1-1 ../../../Data/reads.1.fq.gz   --pe1-2 ../../../Data/reads.2.fq.gz -o result

七、注意事项:

1、spades里面包含很多工具
   - spades.py这个就是可执行的主程序
   - hammer hammer用于illumina reads纠错中
   - ionhammer 用于Ion torrent数据纠错
   - spades 组装的核心程序
   - bwa-spades 利用bwa来进行数据纠错的程序
   - corrector (mismatch correction module)
   - dipspades.py 用于多态性二倍体序列拼接的主程序
   - dipspades 用于多态性二倍体的序列拼接核心程序

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存