快速处理大文件的小软件:seqtk

处理大文件速度太慢?

前几日小编的同学小T想从一个十多个G的fastq文件中随机抽取10000条序列,结果被折磨的束手无策。

小T首先使用了自己擅长的perl语言编写了一个脚本,但花了三个多小时也没跑完,博学的小T又使用了python语言编写了一个脚本,但是速度仍然不理想,只好来问更加“博学”的小编我啦,下面我就把快速解决方法和大家共享一下。

方便处理大数据的小软件

基于C语言编写的软件Seqtk,可以在一分钟之内完成上文中小T的需求。

这个软件还有很多实用的功能,下面介绍下该软件的下载安装和常用功能:

在linux系统(

Linux系统安装及入门

)上通过网址下载,git clone https://github.com/lh3/seqtk.git;安装包下载就绪之后,解压并进入到seqtk-master目录,运行make命令(cd seqtk-master; make)即可。

实现随机抽取序列的命令如下:

此外小编再给大家介绍几个经常用到的功能:

1、fastq文件转换fasta文件

2、把fastq转换成fasta的同时,对低质量的碱基做操作

seqtk seq -aQ64 -q20 in.fq > out.fa把质量值低于20的碱基字母变成小写

seqtk seq -aQ64 -q20 -n N in.fq > out.fa把质量值低于20的碱基变成N

3、基于提供的序列名抽取序列信息,生成fastq格式文件

seqtk subseq in.fq name.lst > out.fq

4、切掉序列两端质量值低的碱基

seqtk trimfq in.fq > out.fq

5、切掉序列左侧5bp和右侧10bp

seqtk trimfq -b 5 -e 10 in.fa > out.fa

希望对童鞋们有所帮助~~~

科技服务事业部 文案

图片源于网络 侵删

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180131A05H8F00?refer=cp_1026

同媒体快讯

相关快讯

扫码关注云+社区