ヒートマップの色づけ (3): log変換して色づけ

ratio で色づけをしても、コントロール群で低いところは、高いところは(実験群はその逆)という色づけにはなりません。では、log変換した場合はどうでしょうか?

色づけが期待通りにならない原因の1つは、シグナル値が非常に広い範囲に分布していることです。log変換することで、この範囲を狭くすることはできます。例えば、下図のように、16から1024まであったものが、 log 変換すると、4から10までの範囲に収まります。(100万でも log2変換すると 20 くらいなので、必ず、二桁以内に収まります。)

log変換した場合。シグナル値の分布する範囲は狭く見える。
log変換した場合。シグナル値の分布する範囲は狭く見える。

これを色付けしてみます。Gene A の WTの低いところをにしたいので、 4.5 よりシグナル値の低いところを、高いところをにします。また、Gene B にも同じ色づけを適用します。

log2変換してから色づけ。
log2変換してから色づけ。

結果は、log変換しない場合と同じです。log変換してもシグナル値の大小関係は保たれます。分布が狭くなるだけでは、うまく色付けできません。

 

ヒートマップの色づけ (2): ratio で色づけ

高いシグナルと、低いシグナルがあるためにうまくいかないのであれば、シグナル値を fold change (ratio) に変換して色づけしてはどうでしょうか?

シグナル値を ratio に変換。
シグナル値を ratio に変換。

ratio の算出

例の場合、WTをコントロールとするので、WTの平均値で、KOのシグナル値を割ると ratio になります。

Gene A の場合は、WT の平均値が 10 なので、 KO の ratio は、10 になります。一方、WTは同じ値で割るので、1になります。(例は、シグナル値がいずれのサンプルも同じ(=ばらつきが全くない)極端なケースです。)

Gene B の場合は、WT の平均値が 1000 なので、 KO の ratio は、2 になります。WTは同じ値で割るので、1になります。

ratio で色づけ

これを色づけしてみます。変動のないところ、つまり、 ratio = 1 の部分を黒、2倍以上 (ratio > 2) を、0.5倍以下 (ratio < 0.5) をに塗るとします。

ratio で色付けした例。
ratio で色付けした例。

結果としては、コントロール群が黒で、実験群が、黒、となるヒートマップが得られます。シグナル値が高いところも低いところも、 ratio が変動していれば、変化は色として確認できます。(この意味では、目的を達成している色づけ方法といえます。)

ただ、コントロール群は、同じ値で割ることになるので、黒以外になりません。よって、ratio で色づけした場合、コントロール群をヒートマップに表示する意味はほとんどありません。

ratio を用いた場合、コントロール群で低いところは、高いところは(実験群はその逆)という、色の変化にはなりません。

 

ヒートマップの色づけ (1): そのまま色づけ

なんとなく、理解したつもりでいても、意外と分かりにくいのが、ヒートマップの色とシグナル値の関係です。マイクロアレイのイメージの誤解でも述べたように、は、2色法の色素の色ではありませんし、シグナル値そのものの強弱を示したものでもありません(大抵の場合)。

また、「どの程度の高さのシグナル値を何色にするか」は、それぞれの研究者が決めなければなりません。(絶対にコレ、という決まりがありません。)

実際に、色づけを行うつもりで、考えてみましょう。シグナル値の低い部分をに、高い部分をにするのが意外と難しいことが分かります。 

色づけの例

下図のような遺伝子Aがあったとします。WTとKOの2群 (n=3) のサンプルがあります。これをヒートマップにしたいので、シグナル値の低いところを、高いところをに塗りたいと思います。

ヒートマップの色づけ。遺伝子Aを色づけ。
ヒートマップの色づけ。遺伝子Aを色づけ。

例えば、 シグナル値 (x) が 50より低い (x < 50) ときは緑、50より高い (50 < x) ときは赤に塗ると定義します。すると、WTはに、KOはに色付けされることになります。これはイメージ通りでしょう。

色づけの問題点

では、遺伝子 B も同時に色付けすることを考えましょう。下図のように、遺伝子 B は、1000から2000の間に分布しています。これを遺伝子 A と同様の条件で、色づけすると、どうでしょう。これは、イメージ通りの結果といえるでしょうか?

遺伝子Bを遺伝子Aと同じ条件で色づけ。
遺伝子Bを遺伝子Aと同じ条件で色づけ。

マイクロアレイのデータは、低いものは、10ほどの値を取りますが、高いものは数十万の値となります。したがって、色づけの条件を低いシグナル値に合わせると、高い遺伝子の変化が見えず、逆に高い遺伝子に合わせると、低い遺伝子の変化が見えないことになります。

遺伝子1個ずつ(=1行ずつ)、色づけの条件を設定するわけにはいかないので、何か対処が必要です。

 

ペアを考慮したt-検定 (MeV)

MeV を用いて、ペアを考慮した t-検定を行う方法を紹介します。

検定を行う2グループに含まれるサンプルの間に、ペアの関係がある場合は、ペアを考慮した検定が可能です。(例えば、患者ごとに投与前、投与後のサンプルある場合など。)ここでは、仮に WT と KO にペアの関係があったと仮定して、例として用いています。

ペアのあるデータ。ここでは仮に WT と KO にペアがあると仮定。
ペアのあるデータ。ここでは仮に WT と KO にペアがあると仮定。

続きを読む ペアを考慮したt-検定 (MeV)

 

MeV の利用できるメモリを増やす方法

MeV を用いて、サイズの大きなヒートマップを作成した場合、結果の画像をファイルとして保存できないことがあります。

例えば、5000個の遺伝子でヒートマップを作成した場合、Set Element Size で指定する Element Width と Height を 40 x 20 くらいにしていると、この問題が発生します。

1つの対処方法としては、 Element Width と Height を 40 x 1 のようにして、縮小されたヒートマップにする方法があります。ただ、この場合、保存したヒートマップは小さすぎて、個々の遺伝子名は読めません。

数千遺伝子のヒートマップを、文字が読める大きさで画像ファイルに保存するには、MeV の利用できるメモリを増やすことで対応できるときがあります。ここでのメモリは、パソコンに搭載されたメモリのことではありません。初期状態で、パソコンに搭載されたメモリのうち、MeVの利用できるメモリは、1GB制限されています。この制限を変更する方法を示します。(Macの場合です。)

(1) 準備(テキストエディタ)

まず、テキストファイルを編集するためのソフト(テキストエディタ)を準備してください。 “Text Wrangler” がおすすめです。必要な場合は、App Store からダウンロードしてインストールします。

TextWrangler. App Store から入手可能。
TextWrangler: App Store から入手可能。

(2) 起動ファイル (tmev_mac.sh) の編集

次に MeV のフォルダを開きます。MeVをインストールした場所にあります。通常は、「アプリケーション」フォルダにあると思います。

MeV のフォルダ。
MeV のフォルダ。

そのフォルダに含まれる “tmev_mac.sh” というファイルを “TextWrangler” などのテキストエディタで編集します。 “tmev_mac.sh” をクリックして、右クリックもしくは、上部のメニューから、「このアプリケーションで開く」–> 「TextWrangler」を選択します。

メニューから、このアプリケーションで開く--> TextWranger を選択。
メニューから、このアプリケーションで開く–> TextWranger を選択。

最終行の “1024” を “4096” などの大きい数字に変更します。ここは、パソコンに実際に搭載されたメモリの大きさと相談してください。搭載されたメモリの半分ほどは、MeVに割り当てても問題ありません。(例:メモリを8GB搭載している場合は、4GB = “4096” を指定。もし、2GB割り当てるのなら “2048” などとします。)

最終行を編集。1024 を 4096 など。
最終行を編集。1024 を 4096 など。

編集後は、下記のようになります。ファイルを上書き保存してください。(この設定ファイルの編集は、インストールされたMeVへの影響はありませんので、この変更により、通常の MeV が起動できくなることはありません。)

編集後。
編集後。

(3) 編集したファイルから、MeVを起動

編集したファイルから、MeV を起動すると、メモリの制限を変更した状態で MeV を利用できます。TextWrangler のメニューの「#!」から、「Run in Terminal」を選択してください。

設定ファイルから MeV を起動。
設定ファイルから MeV を起動。

なお、tmev_mac.sh を上書き保存したとしても、変更したMeVを利用するには、毎回、このファイル経由で MeV を起動する必要があります。(MeV のアイコンをダブルクリックした場合は、標準状態の MeV が起動します。)