SAMファイル/BAMファイルとは
はじめに
シーケンサーから出力されたリード(塩基配列)を参照配列にマッピングすると得られるファイルです。 リードがどこにマッピングされたか、どのようにマッピングされたかを表現することができます。
一般的にリードは FASTQファイル、参照配列はFASTAファイルで表現されます。これらをインプットとして、HISAT2やSTAR、Bowtie2、BWAといったソフトウェアを使用してマッピングすることで、SAMファイル/BAMファイルが得られます。 SAMファイルはテキスト形式で、BAMファイルは同等の情報を保持したバイナリ形式のファイルです。BAMファイルの方がファイルサイズが小さいので、マッピング結果はBAMファイルとして保持することが多いです。
SAM形式/BAM形式
例えば以下のようなマッピング結果があった場合を考えていきます。
座標 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | * | * | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
参照配列 | A | G | C | A | T | G | T | T | A | G | A | T | A | A | * | * | G | A | T | A | G | C | T | G | T | G | C | T | A | G | T | A | G | G | C | A | G | T | C | A | G | C | G | C | C | A | T |
+r001/1 | T | T | A | G | A | T | A | A | A | G | G | A | T | A | * | C | T | G | |||||||||||||||||||||||||||||
+r002 | a | a | a | A | G | A | T | A | A | * | G | G | A | T | A | ||||||||||||||||||||||||||||||||
+r003 | g | c | c | t | a | A | G | C | T | A | A | ||||||||||||||||||||||||||||||||||||
+r004 | A | T | A | G | C | T | . | . | . | . | . | . | . | . | . | . | . | . | . | . | T | C | A | G | C | ||||||||||||||||||||||
-r003 | t | t | a | g | c | t | T | A | G | G | C | ||||||||||||||||||||||||||||||||||||
-r001/2 | C | A | G | C | G | G | C | A | T |
小文字で書かれている塩基はリードの端が参照配列とマッチしていないことを表しています。r001/1とroo1/2はペアのリードで、r003はキメラリード、r004はSplit alignmentとなっています。
これに対応するSAMファイルは以下のようになります。
SAMファイルの例
@HD VN:1.6 SO:coordinate
@SQ SN:ref LN:45
r001 99 ref 7 30 8M2I4M1D3M = 37 39 TTAGATAAAGGATACTG *
r002 0 ref 9 30 3S6M1P1I4M * 0 0 AAAAGATAAGGATA *
r003 0 ref 9 30 5S6M * 0 0 GCCTAAGCTAA * SA:Z:ref,29,-,6H5M,17,0;
r004 0 ref 16 30 6M14N5M * 0 0 ATAGCTTCAGC *
r003 2064 ref 29 17 6H5M * 0 0 TAGGC * SA:Z:ref,9,+,5S6M,30,1;
r001 147 ref 37 30 9M = 7 -39 CAGCGGCAT * NM:i:1
@から始まる行はヘッダ行となります。
それ以降の行がマッピングの結果で、タブ区切りの必須の11カラムと追加の12カラム以降で表現されます。カラムの内容は以下の通りです。
カラム名 | 内容 | |
---|---|---|
1カラム目 | QNAME | リードの名前 |
2カラム目 | FLAG | マッピング結果に関する様々なフラグ |
3カラム目 | RNAME | 参照配列の名前 |
4カラム目 | POS | マッピング位置 |
5カラム目 | MAPQ | マッピングクオリティ |
6カラム目 | CIGAR | マッピング結果の文字列による表現 |
7カラム目 | RNEXT | ペアリードの名前 |
8カラム目 | PNEXT | ペアリードのマッピング位置 |
9カラム目 | TLEN | インサート長 |
10カラム目 | SEQ | 塩基配列 |
11カラム目 | QUAL | 塩基配列のクオリティ |
FLAGやCIGARカラムのさらに詳しい情報等はこちらをご覧ください。