提取bam/sam文件指定区域reads

若想要从sam或bam文件中提取指定区域内的reads,可以使用samtools和bedtools来实现。  首先准备一个区域信息文件。region.bed #第一列为染色体ID,第二三列分别为起始终止位置               ...

若想要从sam或bam文件中提取指定区域内的reads,可以使用samtools和bedtools来实现。

 首先准备一个区域信息文件。region.bed #第一列为染色体ID,第二三列分别为起始终止位置 
              例: 12  21100  41200  #取12号染色体21100-41200区间的序列

之后如果是sam文件,先转成bam文件:
samtools view -Sb  reads.sam >  reads.bam
然后就可以使用bedtools来提取reads啦,命令如下:
bedtools  intersect  -a  reads.bam -b  region.bed > target_reads.bam

转换成fastq:

samtools fastq  -1 r1.fq.gz -2 r2.fq.gz target_reads.bam
 


  • 发表于 2018-05-18 09:34
  • 阅读 ( 14112 )
  • 分类:软件工具

0 条评论

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

347 篇文章

作家榜 »

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