bam文件读取_bam格式文件处理大全(一)
sam文件是短序列比对生成的文件,是二代测序中最核心的文件。在RNAseq,变异检测等分析中,都需要首先生成sam文件格式。bam文件是sam格式的二进制格式,转换为二进制之后,可以减小文件的存储。掌握sam/bam文件的操作是处理二代测序数据的非常重要的内容,例如sam与bam的转换,排序,建立索引,reads计数等等操作。
1 生成sam文件
有很多软件可以生成sam格式,例如bwa,bowie2,tophat2,subread,minimap2等等。输入数据为fasta格式,作为比对参考序列;fastq格式的测序数据,例如illumina测序的pairend数据等。也就是将测序数据比对回参考序列上。可以简单理解为sam=fasta+fastq。
# bwa建立索引
bwa index -a is ref.fna
#bwa mem比对
bwa mem -t 4 -R '@RG\tID:A1\tPL:illumina\tSM:A1' ref.fna A1_1.fastq.gz A1_2.fastq.gz >A1.sam
bwa mem -t 4 -R '@RG\tID:A2\tPL:illumina\tSM:A2' ref.fna A2_1.fastq.gz A2_2.fastq.gz >A2.sam
2 sam文件格式介绍
sam格式为文本格式,可以直接查看,一共有11列,每一列的内容如下:
第一列:reads ID
第二列:是flag标记的总和
第三列:比对到参考序列上的染色体号。
第四列:在参考序列上的位置
第五列:比对的质量值,MAPQ
第六列:代表比对结果的CIGAR字符串
第七列:mate比对到的染色体号,若是没有mate,则是*
第八列:比对到参考序列上的第一个碱基位置
第九列:Template的长度,
第十列:为read的序列
第十一列:为ASCII码格式的序列质量;
3 flag标识符的意义
sam第二列为flag标识符,这些标识符为比对模式,例如单端比对,还是双端比对,或者没有比对上。这些数字为二进制之和。可以通过以下完整进行解释。
flag解析:http://broadinstitute.github.io/picard/explain-flags.html
4 sam标识符的意义
sam文件每一行的结尾包含很多标识符,这些标识符是比对的具体细节,可以查看对应的文档进行解读。不过这些标识符是供下游软件处理,并不需要人工来解读。
sam标识符解释:https://github.com/samtools/hts-specsXT:A:U NM:i:0 SM:i:37 AM:i:37 X0:i:1 X1:i:0 XM:i:0 XO:i:0
XT:A:U NM:i:2 SM:i:37 AM:i:37 X0:i:1 X1:i:0 XM:i:2 XO:i:0
XT:A:U NM:i:0 SM:i:37 AM:i:37 X0:i:1 X1:i:0 XM:i:0 XO:i:0
bam文件读取_bam格式文件处理大全(一)相关推荐
- bam获取序列_bam格式文件处理大全(四)
sam文件是短序列比对生成的文件,是二代测序中最核心的文件.在RNAseq,变异检测等分析中,都需要首先生成sam文件格式.bam文件是sam格式的二进制格式,转换为二进制之后,可以减小文件的存储.掌 ...
- php vcf,php简单读取.vcf格式文件的方法示例
本文实例讲述了php简单读取.vcf格式文件的方法.分享给大家供大家参考,具体如下: /** * 读取.vcf格式文件 * @param $filename */ function readCvf($ ...
- python用os.system打开wav文件_使用python读取wav格式文件
** 使用python读取wav格式文件 ** - 基本概念 [采样频率] 即取样频率, 指每秒钟取得声音样本的次数.采样频率越高,声音的质量也就越好,声音的还原也就越真实,但同时它占的资源比较多.由 ...
- python xlrd读取excel-使用Python xlrd模块读取Excel格式文件的方法
这是一篇关于如何使用Python xlrd模块读取Excel格式文件的方法的文章,下面的python代码中使用 了xlrd模块的方法,这样就能够很方便的读取 excel 文件内容.同是这个xlrd模块 ...
- python获取的html转换为json,python读取XML格式文件并转为json格式
XML文件如下: 红楼梦书名> 曹雪芹作者> 描述贾宝玉和林黛玉的爱情故事主要内容> 人民文学出版社出版社> 图书> 一.python读取XML格式文件代码: impor ...
- nodejs json转对象_nodejs读取xlsx格式文件
# nodejs读取xlsx格式文件 安装 npm i node-xlsx -D // 或者 yarn add node-xlsx -D 使用 读取表格数据,并生成json对象 /*** @auth ...
- python 读取csv文件转成字符串,python实现csv格式文件转为asc格式文件的方法
一.背景描述 csv格式文件是一种类似于excel的文件格式 asc格式文件是一种可以用text打开的文本文件 csv转asc本来可以用arcgis顺利完成,但由于csv数据量太大(744万行),ar ...
- VTK重建CT图像,写入和读取STL格式文件
VTK重建CT图像(代码亲测无误) 1.读取数据 2.提取等值面 3.显示结果 一是要有输入源(jpegreader读入的数据) 二是要有相机(camera) 三是要有展示的窗口(window) #i ...
- 如何用.net c# 读取epub格式文件
如何用.net(c#)读取epub格式文件 epub格式是印刷出版界常见的格式,本格式遵循XML原则把网页进行压缩打包. 如何用c#读取epub格式文件是个头疼的问题,本人搜遍各大网站,发现介绍都语焉 ...
最新文章
- BZOJ4238 : 电压
- php职能等级,php如何设置报错级别
- python编程语言一览_编程语言学习:python有趣用法汇总
- python3爬虫(9)分布式爬虫与对等分布式爬虫
- 使用ABAP Push Channel(APC)开发的乒乓球游戏,可双打
- H264实时编码及NALU,RTP传输(ZZ)
- Educational Codeforces Round 15 套题
- python 并发编程 socket 服务端 客户端 阻塞io行为
- Android超级好看的动态登陆界面(附有详细代码)
- 如何在csdn写博客
- 教你破资深加密工具lockdir.exe加密后的文件
- petalinux 建立工程两种方式
- 虚拟机ubantu如何扩展系统内存
- linux同步苹果照片,有用iPhone的吗?Linux下怎么管理iPhone里的照片?
- 激光电视的优缺点说明,激光电视与投影有什么区别
- mybaties学习笔记
- kirin710f是什么处理器_我告诉你kirin710f是什么处理器
- Domino管理中的一些小而有大用处的技巧
- 商业贷款买房的7个步骤
- iOS 作为蓝牙外设广播信息