信创整体解决方案助推企业数字化转型与智能化发展
1677
2022-11-25
Abyss:基于布隆过滤器的基因组组装软件
主流的NGS基因组组装软件都是先将序列划分成kmer, 然后基于de Bruijn Graph图论算法,得到组装好的序列。程序运行时,kmer字符串时存储在内存中,所以要求计算机的内存要足够大。
Abyss 基于布隆过滤器,不直接储存字符串,减少了内存的消耗。软件的官网如下
xzvf abyss-2.1.0.tar.gzcd abyss-2.1.0/./configure --prefix=$(pwd) --without-sparsehashmake
编译成功后,会生成许多的可执行文件,这些文件分散在不同的目录下,想要成功运行该软件,需要将这些可执行文件都添加到PATH环境变量中,写法如下
export ABYSS_HOME=/soft/abyss-2.1.0export PATH=$ABYSS_HOME/ABYSS:$PATHexport PATH=$ABYSS_HOME/AdjList:$PATHexport PATH=$ABYSS_HOME/Align:$PATHexport PATH=$ABYSS_HOME/bin:$PATHexport PATH=$ABYSS_HOME/Bloom:$PATHexport PATH=$ABYSS_HOME/BloomDBG:$PATHexport PATH=$ABYSS_HOME/Consensus:$PATHexport PATH=$ABYSS_HOME/DAssembler:$PATHexport PATH=$ABYSS_HOME/DataBase:$PATHexport PATH=$ABYSS_HOME/dialign:$PATHexport PATH=$ABYSS_HOME/DistanceEst:$PATHexport PATH=$ABYSS_HOME/FilterGraph/:$PATHexport PATH=$ABYSS_HOME/FMIndex/:$PATHexport PATH=$ABYSS_HOME/GapFiller:$PATHexport PATH=$ABYSS_HOME/Graph:$PATHexport PATH=$ABYSS_HOME/KAligner:$PATHexport PATH=$ABYSS_HOME/kmerprint:$PATHexport PATH=$ABYSS_HOME/Konnector:$PATHexport PATH=$ABYSS_HOME/Layoutp:$PATHexport PATH=$ABYSS_HOME/LogKmerCountr:$PATHexport PATH=$ABYSS_HOME/Map:$PATHexport PATH=$ABYSS_HOME/MergePaths:$PATHexport PATH=$ABYSS_HOME/Overlap:$PATHexport PATH=$ABYSS_HOME/PairedDBG:$PATHexport PATH=$ABYSS_HOME/ParseAligns:$PATHexport PATH=$ABYSS_HOME/PathOverlap:$PATHexport PATH=$ABYSS_HOME/PopBubbles:$PATHexport PATH=$ABYSS_HOME/Scaffold:$PATHexport PATH=$ABYSS_HOME/Sealer:$PATHexport PATH=$ABYSS_HOME/SimpleGraph:$PATH
只需要调整ABYSS_HOME,将其设置为软件所在的实际目录即可,可以在~/.bahsrc文件中设置以上环境变量,然后运行下列代码
source ~.bahsrc
这样环境变量就会生效,至此,软件才算安装成功。官网还提供了测试数据集,-测试数据集的方法如下
wget xzvf test-data.tar.gztree -L 1 test-data├── reads1.fastq└── reads2.fastq
测试数据集是一个双端测序的结果文件,用Abyss进行组装的命令如下
abyss-pe k=25 name=test in='test-data/reads1.fastq test-data/reads2.fastq'
name参数是生成文件的前缀,运行结束后,会生成很多文件,以下两个文件是我们最关注的
test-contigs.fatest-scaffolds.fa
分别对应contig和scaffold的结果。
对于Abyss而言,只能通过for 循环,实现多个kmer 梯度组装,用法如下
for k in `seq 50 8 90`; do mkdir k$k abyss-pe -C k$k name=test k=$k in=reads.fadone
更多的参数和用法请参考官方文档。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~