BWAやBowtieでマッピングするとsam形式でoutputされます。これは人間が目で見て理解できる形式なので,あれこれいじって解析を進めることができるので,しっかり理解しましょう。
sam形式ファイルの中身
lessコマンドによって,sam形式のファイルをみてみると,以下のような11列からなるデータが入っています。(データの初めには,@から始まるheader部分があります。)
r003 163 ch3 9 30 5S6M * 0 0 GCCTAAGCTAA GAS@54AJBW@
↓分かりやすくします。
1列 |
2列 |
3列 |
4列 |
5列 |
6列 |
7列 |
8列 |
9列 |
10列 |
11列 |
r003 |
163 |
ch3 |
9 |
30 |
5S6M |
* |
0 |
0 |
GCCTAAGCTAA |
GAS@54AJBW@ |
1列目:リードの名前
2列目:リードの状況(どんな風にマッピングされてるか判断できる,以下参照)
3列目:張り付いた染色体,コンティグの名前
4列目:張り付いた場所
5列目:マッピングスコア
6列目:マッピング状況(indel入ってるとか,どのくらいマッチしてるとか判断できる,以下参照)
7列目:paired-endの時の相方の名前
8列目:paired-endの時の相方の場所
9列目:paired-endの時のインサートの長さ
10列目:リードのシークエンス配列
11列目:リードのクオリティ
2列目:リードの状況(FLAG)とは
いろいろ数字が書いてありますが,その数字からいろいろな事がわかります。まずこの数字ですが分解する事から始めましょう。たとえば77と書いてあったら,下の数字の大きい方からピックアップしていきます。
77 = 64 + 8 + 4 + 1
それぞれの数字の意味は以下の通りです。なので77の状況はpaired endの最初のフラグメントで,相方も,自分もリファレンスにマッピングされていないということです。
意味 |
|
数字 |
ペアリードがある |
20 |
1 |
両方マップされている |
21 |
2 |
両方マップされていない |
22 |
4 |
相方がマップされてない |
23 |
8 |
逆相補鎖にマップされている |
24 |
16 |
相方は逆鎖にマッピングされてる |
25 |
32 |
最初のフラグメント |
26 |
64 |
最後のフラグメント |
27 |
128 |
複数個所にマップされている |
28 |
256 |
マッピングQVが低い |
29 |
512 |
他にどのような数字が出てくるかというと,私が解析した経験上以下の数字が出てきました。
簡単に説明も書いときました。
0 |
正しくマップされている |
113 |
どちらも相補鎖 |
4 |
mapされてない |
177 |
16 |
正しくマップされている |
97 |
←→ |
99 |
145 |
147 |
69 |
paired endできてない |
83 |
137 |
163 |
117 |
77 |
mapされてない |
153 |
141 |
73 |
65 |
paired endの間が長い |
133 |
129 |
89 |
81 |
181 |
161 |
|
|
たとえば,マップされていないリードを抽出したい場合は以下のコマンドを使います。
samtools view-S -f 4 -F 194 -S alignment.sam >unmapped.sam |
-S はinput fileがsam形式であることを指定している。
-f は許可する数字,この場合4なのでマップされていないリードを許可します。
-Fは許可しない数字,この場合194(128+64+2)なのでpaied endでマップされているリードは許可しない
マッピング状況
M |
アライメントマッチ |
I |
挿入(インサート)がある |
D |
欠損(デリーション)がある |
N |
スッキップ配列がある |
S |
soft clipping (clipped sequences present in SEQ) |
H |
hard clipping (clipped sequences NOT present in SEQ) |
P |
padding (silent deletion from padded reference) |
= |
sequence match |
X |
sequence mismatch |
参考文献
The SAM Format
Specification (v1.4-r985)