re:从零开始的基因组测序专题

JELLYFISH简介及使用

2016-08-02  本文已影响826人  dasdadf

软件简介

功能

  1. 统计并筛选DNA序列中k-mers的数目,输出的结果为二进制文件,能够使用jellyfish dump转换成文本文件。
  2. 最终得到将所有reads打断为长度为k的fasta文件,从而应用于后续的序列组装。

官网

GitHub主页

帮助文档


软件使用

软件的帮助信息

Usage: jellyfish <cmd> [options] arg...
Where <cmd> is one of: count, bc, info, stats, histo, dump, merge, query, cite, mem, jf.
Options:
  --version        Display version
  --help           Display this message

示例

#统计both.fa中将k-mer设为31时所生成的reads的数目。其中:-t表示线程数;-m表示所设定的k-mer大小;-s表示所生成的哈希表的大小;--cannonical表示规范化。默认将结果输出到mer_counts.jf,重定向使用-o参数。
jellyfish count -t 10 -m 31 -s 4000465651  --canonical  both.fa

#将k-mer的序列输出到文件jellyfish.kmers.fa中。在fa文件中,头部为总的k-mer的数目,其它的都未每个k-mer的reads出现的次数。-L用来指定过滤掉的最低频率,-U用来制定过滤掉的最高频率。
jellyfish dump -L 2 mer_counts.jf > jellyfish.kmers.fa

#输出k-mer频率的直方图到*.histo文件
jellyfish histo -t 10 -o jellyfish.kmers.fa.histo mer_counts.jf

其它语言的接口

python

#! /usr/bin/env python

import jellyfish
import sys

mf = jellyfish.ReadMerFile(sys.argv[1])
for mer, count in mf:
    print("%s %d" % (mer, count))

perl

#! /usr/bin/env perl

use jellyfish;

my $mf = jellyfish::ReadMerFile->new($ARGV[0]);
while($mf->next_mer) {
  print($mf->mer, " ", $mf->count, "\n");
}
上一篇下一篇

猜你喜欢

热点阅读