Archives

fasta/q序列抽取和排序: seqtk_reoder

一、使用场景

给定fasta/q文件和一个序列列表,按照给定的序列顺序抽取序列,如不存在则忽略,先前的 seqtk_subseq( 如何根据列表快速提取fasta/q序列子集/补集:seqtk_subseq ) 抽取出序列按照标识符在序列文件中出现的顺序输出,有时我们需要按照给定的标识符输出序列。

seqtk_reoder使用reoder作为名字输出就是指序列输出顺序按照指定顺序输出。

二、工具介绍

通过seqtk_info 查看测试序列信息:

$seqtk_info  shear.fastq
#sequence       base    min_len max_len avg_len
47525   23905075        503     503     503.00

一共47525序列;

2.1 seqtk_split

命令行接口:

$ seqtk_reorder
Usage: seqtk_reorder <fasta/q> <list>
version: 0.0.1

seqtk_reorder 接受两个参数, 序列文件列表文件, 支持stream流模式;

实例

$cat  shear.idx | seqtk_reorder  shear.fasta -

$cat  shear.idx | seqtk_reorder  shear.fastq.gz  -

$cat  shear.idx | seqtk_reorder  <(gunzip  -c shear.fastq.gz)  -

该程序设计使用hash map实现存储目标序列,所以不支持数据库比较大的序列抽取, seqtk_subseq 只存储列表,所以适用范围更广。

本文材料为 BASE (Biostack Applied bioinformatic SEies ) 课程 Linux Command Line Tools for Life Scientists 材料, 版权归上海逻捷信息科技有限公司** 所有

Last update:2017-11-14 4:08 PM

Comments are closed.