Intensity-based Z-score (シグナル値を考慮した Z-score )

マイクロアレイにおいて、シグナル値の低いものは、信頼性(データの再現性)がよくない場合があります。これは、MAプロットや散布図の形状からも推測されます。(同一条件で比較したサンプルにおいても、シグナル値の低い部分に変動が見られがち。)

例えば、シグナル値が、1000から10000になったら、ratio=10ですが、10から100になっても同じ ratio=10 です。ratio だけで、発現変動遺伝子を判定すると、特にシグナル値の低い部分に、ratio が高い遺伝子が見つかりがちですが、再現性を考えた場合、少し不安です。

一方、 Z-score で判定した場合も、MA プロットから分かるように、シグナル値の高い部分は、Z-score が高くなりにくい傾向があります。

この2点の問題を解消するために、  Intensity-based Z-score (Intensity-dependent Z-score)* というものがあります。(以前から提案されているもので、珍しい手法ではありません。)

Intensity-based Z-score

Intensity-based Z-score では、文字通り、Intensity (=シグナル値の強さ) を考慮した Z-score です。マイクロアレイデータをシグナル値の大きさごとに一定の区間に分割して、その区間ごとに logFC の平均値と標準偏差を求めます。そして、それぞれの区間ごとに、Z-score を算出します。

そうすることで、シグナル値の低い部分は、大きい標準偏差 (SD) を用い、一方、シグナル値の高い部分は、小さい SD を用いて Z-score を判定することになります。したがって、シグナル値の低い部分は、通常の Z-score より判定条件が厳しくなり、シグナル値の高い部分は、判定条件が緩くなります。

MAプロットで確認すると、違いがよくわかります。ここでは、便宜的に、シグナル値の大きさによって8区間に分割して、Z-score を算出しています(図下)。(8つという区間に必然性はありません。もう少し細く区切ってもよいです。)また、Intensity-based Z-score を使用した図は、事前に使用した2サンプルのフラグが、共にA(absent: 未検出)のプローブを除外しています。

Z-score で色付けした MA プロット。
Z-score で色付けした MA プロット。
Intensity-based Z-score で色付けしたMAプロット。(フラグでカットしている。)
Intensity-based Z-score で色付けしたMAプロット。(フラグでカットしている。)

図形的には、変動している遺伝子を外側から数パーセント取るという形になります。単純に ratio で判定するよりも慎重な方法といえるでしょう。しかしながら、これも万能な手法というわけではありません。可能であれば、繰り返しサンプル (replicates) が、3サンプル以上 (n=3以上) あって、検定などの手法が使える方が望ましいことには変わりません。

参考

* Quackenbush. Microarray data normalization and transformation. Nat Genet (2002) vol. 32 Suppl pp. 496-501.

 

Z-score の利点と欠点

MAプロットで確認すると、 ratio と Z-score の関係が、分かりやすいと思います。解析例1のデータ (sample2/control2) においては、ratio=2 のラインより、2SDのラインが外側にあります。この場合は、 Z-score のほうが厳しい判定と言えます。(追記:この例の場合、2SD=約1.344 (logFCで)、ratio > 2.54 が Z-score > 2 のラインです。)

MAプロットに示した Z-score の関係。
MAプロットに示した Z-score の関係。

また、 logFC を Z-score 化して、発現変動遺伝子の判定を行う場合、利点と欠点があります。

Z-score を判定に用いた場合の利点

単純に ratio で判定する場合に比べて、下記のような利点があります。

  • 判定の基準で迷わない。
  • 発現変動が大きいデータの場合、カットオフに使える。
  • 発現変動が小さいデータでも、発現変動遺伝子を判定できる。

Z-score > 2 または、 Z-score < -2 ということに、統計学的な意味があるので、判定の基準をいくらぐらいにしようかということで迷う必要はありません。(2 以下にあまり意味がありません。)

また、発現変動が大きいデータの場合、ratio > 2, ratio < 0.5 などで判定すると、4000個、5000個の遺伝子が、発現変動ありとなることもあります。そのような大きいデータの場合、 Z-score で判定することで、発現変動遺伝子の数を1000個から2000個程度に減らせます。(発現変動遺伝子が多すぎても困ることがあります。例えば、DAVID で1度で解析できる遺伝子の数は、3000個です。)

逆に、サンプルによっては、たかだか1.5倍程度しか変動しないような、小さい発現変動のデータもあります。そのような場合、Z-score だけで判定すれば、(ratioの大きさに関係なく)変動している遺伝子の上位5%程度を取ることになるので、必ず、変動遺伝子を得られます。

Z-score を判定に用いた場合の欠点

利点の裏返しです。

  • 判定が厳しすぎるときがある。
  • シグナル値が高い部分で、|Z-score| > 2 に比較的なりにくい。

例えば、研究対象としている遺伝子があり、 ratio だと 2 倍を超えているのに、 Z-score だと、 1.7 というようなケースです。Z-score  が2以下だからといって、「変動していない」という証明になるわけではありませんが、印象が良くないかもしれません。

また、散布図やMAプロットの先が細いということからも見えることですが、シグナル値の高い部分は、変動が小さく見えがちです。シグナルの高い部分にも、シグナルの低い部分と同程度の標準偏差を求めるならば、高い部分は、|Z-score| > 2 になりにくいといえます。

しかしながら、そもそも、変動が大きすぎたり、変動が小さい場合は、まず、サンプル数(n数)を増やすことを考えるべきです。n=3以上にして、limma, SAM, t-test などの検定を行ったほうが、p-value も算出できますし、より再現性の高い遺伝子を変動ありと判定できます。

 

Z-score (発現変動遺伝子を判定するもう1つの方法)

ratio (logFC) 以外に発現変動遺伝子を判定する方法として用いられるものに、 Z-score があります。あまり聞きなれない用語かもしれませんが、偏差値というとどうでしょうか?

ある値が、その群の平均値から、標準偏差 (SD) の何個ぶん離れているかを求めたものが、 Z-score です。Z-score の考え方自体は、特殊なものではありません。Z-検定 (Z-test) という使われ方もあります。(Z-score 化されるのは、logFC に限りません。例えば、 cBioPortal では、シグナル値が Z-score 化されています。)

ここで用いるのは、 logFC を Z-score 化したものです。ある logFC  が、 logFC の平均値から、標準偏差の何個ぶん離れているか計算します。

ratio (logFC) のヒストグラム

ratio (logFC) のヒストグラムを示します。データは、解析例1のものを使っています。

ratio (logFC) のヒストグラム。
ratio (logFC) のヒストグラム。

ほとんどの遺伝子の logFC が0(つまりratio=1)、変動していないことが分かるかと思います。ratio で判定するなら、 ratio > 2 または、 ratio < 0.5 を満たす部分に含まれる遺伝子を発現変動遺伝子と判定していることになります。(ヒストグラムの右側と左側)。

標準偏差と Z-score

次に、同じヒストグラムに標準偏差 (SD) と Z-score の関係を示してみます。

標準偏差とZ-scoreを示したヒストグラム。
標準偏差とZ-scoreを示したヒストグラム。

解析例1のデータ (sample2/control2) の場合、計算してみると、logFC の平均値は、ほぼ0になります。SDは、約 0.672 です。また、分布関数の考え方から、平均値から標準偏差2個分離れていれば、稀な値 (p-value < 0.05) ということになります。

したがって、 Z-score で判定する場合は、下記のようになります。

  • 増加した遺伝子: Z-score > 2
  • 減少した遺伝子: Z-score < -2

絶対値の記号を用いれば、両方を合わせて、  |Z-score| > 2 とも書けます。

追記:2SDだと、2 x 0.672 = 1.344 なので、 logFC > 1.344 であれば、 Z-score > 2 です。ratio で言い換えると、ratio > 2.54 であれば、Z-score > 2 となります。

参考

https://www.khanacademy.org/math/probability/statistics-inferential/normal_distribution/v/ck12-org-normal-distribution-problems-z-score

 

MA プロット(シグナル値の高低と ratio の関係)

通常、MAプロットは、log2変換された値を用いて示されます。

MA プロット。縦軸(M)、横軸(A)とも、log2変換された値。
MA プロット。縦軸(M)、横軸(A)とも、log2変換された値。

見慣れないというかたは、次の対数目盛り(2のべき乗)の結果と見比べてみてください。

目盛りを、対数目盛り(2の倍数)で表示した MA プロット図。
目盛りを、対数目盛り(2のべき乗)で表示した MA プロット図。

M = 0 のところが、2の0乗、すなわち、ratio = 1です。また、A = 10 は、2の10乗、すなわち、 1024です。赤い部分は、 ratio > 2 の遺伝子です。青い部分は、 ratio < 0.5 の遺伝子です。

プロット図の左に行くほど、シグナル値は低く、右に行くほど、シグナル値は高いです。赤い部分または青い部分を見ると、大きく変動している遺伝子が多いように見えますが、それらのほとんどが、シグナル値の低い部分に集中していることが実感できるのではないでしょうか?(シグナル値の平均値が 32 以下。)

シグナル値の高低と、ratio の関係。
シグナル値の高低と、ratio の関係。
 

MA プロット (MA Plot)

ボックスプロット、散布図、ヒストグラムのほかに、マイクロアレイのデータの代表的な表示方法として、MAプロット(えむえーぷろっと) [1] があります。図形としては、散布図を45度回転させたようなイメージです。

MAプロットに用いるデータ

MAプロットは、2サンプルのデータの関係を表します。散布図では、log2変換されたシグナル値がそのまま用いられますが、MAプロットを書くためには事前に計算作業が必要です。その名の通り、2サンプルのデータから、MAの値を算出して使用します。ここで、M は「log2変換されたシグナル値の差」であり、A は「log2変換されたシグナル値の平均値」です。数式では、次のように書けます。

  • M = log2(実験サンプル) – log2(コントロールサンプル)
  • A =  { log2(実験サンプル) + log2(コントロールサンプル) } / 2

M は、「log2変換されたシグナル値の差」つまり、logFC のことです。また、A は、Average の A と覚えるとよいでしょう。

MAplot
MA プロットの例。

作図方法については、wikipedia などで紹介されています[2]。当初は2色法のデータをもとに提案されていたため、2サンプルとして、R: redG: green の表記がされていることもありますが、1色法でもMAプロットは使えます。MAプロットは、散布図のひとつです。ただ、シグナル値の代わりにMとAの値を算出して用いているだけです。MとAの値を算出してしまえば、散布図なので、エクセルでも比較的簡単に書けるでしょう。

続きを読む MA プロット (MA Plot)