アメリエフの技術ブログ

Amelieff Staff Blog

BEDフォーマット完全解説

BEDフォーマットはゲノム上のポジションを示すのに使われているフォーマットで、遺伝子や結合部位などを示すのに広く使われています。
元々はUCSC Genome Browserで使われていたフォーマットですが、最近は様々な解析ソフトウェアでも読み書きできるようです。

BEDフォーマットは最大12列からなるフォーマットで、最初の3列が必須です。
後半は使わないことも多いのですが、知っていると、UCSC Genome Browserにカスタムトラックを作る際に便利です。
今日はBEDフォーマットについて詳しく解説したいと思います。

(1)chrom:染色体名(chr1など)
(2)chromStart:スタート位置(数値)
 0スタート(染色体の左端を0と数える)である点にご注意ください。
 他のフォーマット(例えばVCF)には1スタートのものもあります。
 フォーマット間の変換の際は気を付けましょう。
(3)chromEnd:エンド位置(数値)

---↑この3列は必須。この3列だけのものをbed3と呼びます。

 bed3の例:chr1 0 100
 =染色体chr1の先頭から100bpの領域を指す

 項目間はタブかスペースで区切ります。

(4)name:名前(文字列)
 遺伝子名や任意の文字列を指定します。特に必要ない場合は空文字列を入れます。
(5)score:スコア(0-1000の間の数値)
 遺伝子らしさ(新規遺伝子候補の場合など)や類似度(比較ゲノムの場合など)など、0-1000間の数値を何でも入れることができます。特に必要ない場合は一律で0などを入れます。
 UCSC Genome Browserでは、スコアに応じて濃淡をつけることができます。その場合、BEDファイルの先頭に次の1行を記載します(nameやdescriptionは適当な文字列に変更してください)。
 

track name=myTrack1 description="myTrack1 score" useScore=1



(6)strand:ストランド(+ または -)
 ゲノム配列に対して5'→3'の向きなら+、3'→5'の向きなら-です。

---↑(1)-(6)まであるものをbed6と呼びます。

 bed6の例:chr1 1000 2000 foo 100 -
 =染色体chr1の1000塩基目から2000塩基目にゲノムと逆向きである、スコア100の「foo」という領域を指す


(7)thickStart:CDSの開始位置(数値)
(8)thickEnd:CDSの終了位置(数値)
 UCSC Genome Browser上で、(7)-(8)の領域は太い線で表示されます。数値的に(2)<=(7)<(8)<=(3)になっていないと怒られます。
 元々はCDS用の列ですが、遺伝子以外のデータの場合で、部分領域を強調するのに使えます。

(9)itemRgb:色をRGBで指定(数値,数値,数値)
 これは完全にUCSC Genome Browserで表示するためだけの情報なので、他のソフトウェアで開く場合には関係ないことが多いです。使わない場合は0などを入れておきます。
 例えば赤で表示したい場合はここを「255,0,0」とし、BEDの先頭にTrack行をつけ、itemRgb Onと指定します。

track name=myTrack1 description="myTrack1 with color" itemRgb="On"



(10)blockCount:エキソンのブロック数(数値)
(11)blockSizes:ブロックサイズ(数値をコンマ区切りで)
(12)blockStarts:エキソンの「転写開始位置からみた」スタート位置(数値をコンマ区切りで)

---↑(1)-(12)まであるものをbed12と呼びます。

 bed12の例:chr1 100 300 bar 0 + 110 220 0 2 30,60, 10,60,
 =転写領域が「chr1:100-300」、1つ目のエキソンが「chr1:110-140」、2つ目のエキソンが「chr1:160-220」である遺伝子「bar」を示す


以上、ちょっと細かいBEDフォーマットのお話でした。
itemRgbやスコアによる濃淡を使うと、カラフルなトラックを使うことができますよ!

【参考】UCSC Genome BrowserのHelp


新年度トレーニングキャンペーン

 

アメリエフでは、バイオデータ解析やそのシステム・インフラ環境の開発に興味のあるエンジニア・リーダー候補を募集しています。
www.wantedly.com