轻松搞定fasta索引文件、序列提取

fasta是常用的序列存储格式,很多软件(如GATK、IGV等)在导入序列以及进行快速查找时通常需要建立索引文件。本文介绍如何使用 samtools 便捷的建立fasta文件的索引以及快速进行序列提取。

fasta是常用的序列存储格式,很多软件(如GATK、IGV等)在导入序列以及进行快速查找时通常需要建立索引文件。下面就来介绍如何使用 samtools 便捷的建立fasta文件的索引以及快速进行序列提取。

建立索引

建立索引只需在Linux下输入命令:samtools faidx input.fa

这里序列文件为 input.fa,生成的索引文件以 .fai 结尾。需要注意的是,输入的fasta文件的每条序列除最后一行外,其余行的长度必须相同,否则会报错哦!最后生成的.fai文件如下, 共5列,以制表符分隔;


第一列 NAME : 序列的名称,只保留“>”后,第一个空白之前的内容;

第二列 LENGTH : 序列的长度,单位为bp;

第三列 OFFSET : 第一个碱基的偏移量,从0开始计数,换行符也统计进行;

第四列 LINEBASES : 除了最后一行外, 其他代表序列的行的碱基数, 单位为bp;

第五列 LINEWIDTH : 行宽, 除了最后一行外, 其他代表序列的行的长度,包括换行符,在windows系统中换行符为\r\n,要在序列长度的基础上加2。

提取序列

除建立索引外,还可以利用samtools方便的提取序列,例如:

samtools faidx input.fa chr2 > chr2.fa,会得到含chr2这条序列的fasta格式的文件,如果是多条序列,只需在文件后罗列需提取的序列ID即可,使用空格分隔,如 samtools faidx input.fa chr1 chr2 chr3 > chr.fa

再如:samtools faidx input.fa chr2:1-1000 > chr2.fa,能得到chr2序列的第1到第1000个碱基的fasta格式的文件,同样可以提取多条序列。

samtools 安装

1. 下载,地址如下:http://www.htslib.org/doc/samtools.html。

2. 安装,使用命令tar -jxvf samtools-1.6.tar.bz2解压下载的压缩包,最后使用make命令就可以了。

  • 发表于 2018-04-22 11:05
  • 阅读 ( 9408 )
  • 分类:软件工具

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
安生水
安生水

350 篇文章

作家榜 »

  1. omicsgene 702 文章
  2. 安生水 350 文章
  3. Daitoue 167 文章
  4. 生物女学霸 120 文章
  5. xun 82 文章
  6. 红橙子 78 文章
  7. rzx 76 文章
  8. CORNERSTONE 72 文章