スキップしてメイン コンテンツに移動

ChIP-seqの統計解析のレビュー読んだよ2

今回読む論文はこれ。

3. Pepke, S., & Wold, B. (2009). Computation for ChIP-seq and RNA-seq studies. Nature method

ChIP-seq について体系的に書かれているレビュー。現在出版されているレビューのなかでは一番良いと思う。

ChIP-seq の概要


ChIP-seq を成否は、
1. 十分に binding site が enrich されていること
2. enrich されたクロマチン分子を獲得できていること
の2点に依存する。

mapping は specificity (unique reads only) と increasing sensitivity (multireads used) のトレードオフがある。ChIP reactions は enrichments であって purifications ではない(`・ω・´)キリッ Background と真のシグナルを分ける必要がある。哺乳類ゲノムは大きいので background の coverage が低いことに注意する。単純な tag count が多いピークに生物学的な意味があるとは限らない。バックグラウンドやコントロールとの比較する。いろんなツールやパラメータを試して変化のないピークをつかうべき。

ChIP peak の分類


sequence specific tf だと特定の位置に鋭いピークが立つ。RNA polymerase はTSSに強く鋭いピークがでるが gene body にも broad なシグナルがでる。Histone などの場合は nucleosome level の broad なピークが続く。それぞれ別なアルゴリズムやパラメータで検出しなければならない。

Peak finding の用語整理と解析の流れ


まずは用語の説明。ホワイトボードにメモった手書きの図をアップしておく。read を reference genome に mapping すると1塩基ごとの tag count が計算できる。この tag count から binding site を得る問題を解く。この際に、tag count から分布に変換する処理を peak calling や peak finding と総称する。

tag の密度高い領域を region と呼び background と比較して enrich した領域のことを言う。region を同定したあと、タンパク質とDNAがクロスリンクした場所を特定する。これを source point と呼ぶ。region のなかで tag count が極大になる部分が source point である可能性が高い。この場所を summit と呼ぶ。histone mark などは single source point が存在するわけではないので summit finding の必要はなく、region finding のみでよい。ChIP-seq でよくみるタグカウントの分布を単に peak と言ったり single peak profile と呼ぶらしい。(が、後者は、時系列などの peak の変遷と混同しそうなので使いたくないなー)

ChIP-seq Peak Finding

次に解析の流れ。
1. single peak profile の決定
2. background の調整 (異なる実験間の peak pairing も必要だが言及なし)
3. peak calling criteria
4. artifact などを除く peak filtering
5. peak ranking
となる。

次回はそれぞれのステップについて詳しく説明する。

100報まで残り 97.5報。

コメント

このブログの人気の投稿

シーケンスアダプタ配列除去ツールまとめ

FASTQ/A file からシーケンスアダプター配列やプライマー配列を除くためのプログラムをまとめてみる。 まず、配列の除去には大別して2つの方向性がある。ひとつは、アダプター配列を含む「リード」を除いてしまう方法。もうひとつは除きたい配列をリードからトリムする方法である。後者のほうが有効リードが増えるメリットが、綺麗に除ききれない場合は、ゲノムへのマップ率が下がる。 気をつける点としては、アダプター/プライマーの reverse complement を検索するかどうか。paired end の際には大事になる。クオリティでトリムできるものや、Paired-end を考慮するものなどもある。アダプター/プライマー配列の文字列を引数として直接入力するものと、multi fasta 形式で指定できるももある。 From Evernote: シーケンスアダプタ配列除去ツールまとめ TagDust http://genome.gsc.riken.jp/osc/english/software/src/nexalign-1.3.5.tgz http://bioinformatics.oxfordjournals.org/content/25/21/2839.full インストール: curl -O http://genome.gsc.riken.jp/osc/english/software/src/tagdust.tgztar zxvf tagdust.tgz cd tagdust/ make sudo make install rehash 使いかた: tagdust adapter.fasta input.fastq -fdr 0.05 -o output.clean.fastq -a output.artifactual.fastq 解説: 入出力形式は fastq/a が使える。リード全体を除く。速い。アダプター配列を fasta 形式で入力できるのが地味に便利で、これに対応しているものがなかなかない。Muth–Manber algorithm (Approximate multiple

DNAを増幅するサーマルサイクラーを自作してみたよ

DNAをPCR法で増幅するために必要なサーマルサイクラーを自作してみました。自作と言っても、いわゆる、PCの自作と同じでパーツを組み立てていく感じです。購入から組み立ての様子を簡単に紹介します。 モチベーション ラボには様々なレクリエーションがあります。例えば、単にどこかに遊びに行ったり、スポーツ大会したり、ひたすら合宿形式でプログレスのプレゼンをするミーティングするなどがあります。それもよいのですが、せっかくなので、普段の研究時間ではトライできないが、研究に関わる hack を行う、というイベントを企画してみました。夏休みの自由研究や社会科見学的なノリです。   うちのラボでは、PCRを使ったウェットの実験技術の開発をしてきました。しかし、サーマルサイクラーのハードウェアの仕組みを体験的に理解している訳ではありません。そこで、サーマルサイクラーを作ってみました。   欧米で始まっている、自宅のガレージやキッチンでバイオロジーを行うムーブメント、バイオパンク、DIYbio を体験しておきたいというのもありますし、Arduino などオープンハードウェア、Maker のムーブメントを体験するのも目的の一つです。ハードウェア開発が思っているほどハードルが下っていることを体験できて、かつ、将来、ウェットの開発だけでなく、装置開発などもできたら、ラッキー、ぐらいの気持ちでやってみました。   購入 今回作ったのは、組み立て式で、かつ、仕様などや設計図が公開されているOpenPCRというサーマルサイクラーです。ハードウェアの仕様・設計図、制御ソフトウェアなどの情報がすべて公開されており、部品からも自作することが可能です。今回は、「設計図から部品や回路のパーツを作り、それらを組み立てる直前のもの」を購入しました。   ChaiBio https://www.chaibio.com/   OpenPCR https://www.chaibio.com/products/openpcr   なぜか http://openpcr.org/  で購入できなかったので、eBay にある ChaiBio で買いました。   OpenPCR - eBay http://www.ebay.com/itm/111096418574   本体価格は

R でいまどきなパッケージ開発 (devtools, testthat, roxygen2)

追記 (2012/04/21): 以下のコードは S4 classes で書いていますが、R5 reference classes で書き直してみました。こちらもどうぞ。 http://blog.hackingisbelieving.org/2012/04/r5-reference-class-r-devtools-testthat.html R のパッケージ開発の情報があまりないので、自分はこんな感じでやってます、というのを書いてみます。パッケージ開発支援の devtools と単体テスト支援の testthat, そしてドキュメント生成支援の roxygen を使うのがいまどきっぽいです。 そもそもパッケージを作製しているひとをあまりみたことがないので、もっとこうすべき、というのがあれば教えてほしいです。 今回はデモケースとして S4 OOP で、Idol クラスを定義し、とある身体的特徴の統計量を計算するパッケージを作ります。R のプロンプトは > で、シェルのプロンプトは $ で示しています。 0. 準備 必要になるパッケージをインストールします。 $ sudo R > install.packages(devtools) > install.packages(testthat) > q() devtools の設定をします。~/.Rpackages に設定を記述します。 $ emacs ~/.Rpackages list(   default = function(x) {     file.path("~/Project/dev/R/", x, x)   },   "idol" = "~/Projects/dev/R/idol/idol" ) 以下の行は今回パッケージを作製する作業ディレクトリになります。   "idol" = "~/Projects/dev/R/idol/idol" 1. ともあれ実装を始める 作業ディレクトリに移動します。 $mkdir -p ~/Project/dev/R/idol $ cd ~