bam檔案讀取 bam格式檔案處理大全 一)

2021-10-13 15:02:32 字數 1309 閱讀 2534

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解析:

4 sam識別符號的意義

sam檔案每一行的結尾包含很多識別符號,這些識別符號是比對的具體細節,可以檢視對應的文件進行解讀。不過這些識別符號是供下游軟體處理,並不需要人工來解讀。

sam識別符號解釋:  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檔案格式說明

1.序列是一對序列中的乙個 2.比對結果是乙個pair end比對的末端 4.沒有找到位點 8.這個序列是pair中的乙個但是沒有找到位點 16.在這個比對上的位點,序列與參考序列反向互補 32.這個序列在pair end中的的mate序列與參考序列反響互補 64.序列是 mate 1 128.序列...

bam檔案的理解

bam檔案的理解 less sn in.sam 開啟sam檔案 samtools view h in.bam 開啟bam檔案 接下來我們重點看看每一列在我們的分析中起到的作用。reads name 每一條reads的查詢名稱,於fastq檔案 flag flag是比對質量的重要資訊,不同的值代表比對...

Pysam 處理bam檔案

pysam可用來處理bam檔案 安裝 用 pip 或者 conda即可 使用 pysam的函式有很多,主要的讀取函式有 一般常用的是第乙個和第二個。例子 1 import pysam 23 bf pysam.alignmentfile in.bam rb 其中r read,b binary.二進位制...