マイクロアレイデータにおける発現変動遺伝子の定義 (2-1)

ratio を用いた発現変動遺伝子の判定の問題点

前回、ratio を用いた発現変動遺伝子の判定基準を述べました。また、下記の3つの問題点を挙げました。今回は、それらの問題点への対策を述べます。

  1. しきい値ギリギリの遺伝子。 (1.9倍に増加している場合など)
  2. シグナル値が低く、 ratio は高い遺伝子。 (10 から 100 に増加した場合など。)
  3. シグナル値が高く、 ratio が低い遺伝子。 (40,000 から 60,000 に増加した場合など。)

問題1. しきい値ギリギリの遺伝子(1.9倍に増加した遺伝子など)

前回、発現変動遺伝子を判定する条件として、2倍(0.5倍)という、しきい値を挙げました。このとき、1.9倍に増加した遺伝子は、発現変動遺伝子と判定されません。わずかの差で発現変動遺伝子とならないのは、惜しい気がします。この場合、どうしたらいいのでしょうか?

解決策1: 「あきらめる」

解決策の1つは、「あきらめる」です。仮に1.9倍もOKとした場合、1.8倍はどうするのか?1.8倍もOKなら、1.7倍は、、、とキリがありません。必ず、どこかで線引きが必要になります。1.9倍は、なにも発現変動しなかったと言っているわけではありません。いったん、2倍という基準を用いて、その後の解析を行って、それから次点の発現変動遺伝子の候補を探しても遅くはないでしょう。また、発現変動遺伝子の判定基準を低く設定すると、新たな問題が発生します。それは、発現変動遺伝子と判定される遺伝子の数が多すぎるという問題です。発現変動遺伝子の数が数千個となった場合は、その後の解析に支障が出ます。(詳しくは別で述べます。)

解決策2: 「ratio 以外の判定基準を使用」

別の解決策としては、「ratio 以外の判定基準を使用する」というものが考えられます。これは、次の問題点の解決策でもあるので、次で述べます。(p-valueZ-score などがあります。)

解決策3:  「他の実験結果をつける」

論文投稿時であれば、リアルタイムPCRなど「他の実験結果をつける」という方法もあります。特定の遺伝子の発現変動の有無に注目されている場合、その特定の遺伝子の ratio が、しきい値以上になっていなければ気になる方も多いと思います。前回、述べたように、判定基準の2倍という数字に根拠はありません。そのため、ほかの実験で確認できているのであれば、1.9倍であっても、1.5倍であってもレビュワーから問題にされることは少ないです。

解決策4: 「正規化のアルゴリズムを変更する」

別の解決策としては、「正規化のアルゴリズムを変更する」というものです。異なるアルゴリズムを用いて正規化を行えば、正規化のシグナル値は、若干、異なる値となります。うまくいけば、あるアルゴリズムで正規化したときに 1.9 倍の増加であった遺伝子が、別のアルゴリズムで正規化されたときに2倍の増加になるかもしれません。ただ、この方法だと、すべての遺伝子のシグナル値に影響があるため、逆のことも起こります。2倍の増加であったものが、1.9倍の増加になるかもしれません。注目しているすべての遺伝子に都合良く、正規化できるアルゴリズムが存在するとは限りません(遺伝子ごとに正規化方法を変えることはできません)。この方法は、いささか、恣意的な行為と考えられるため、奥の手と言えます。

結論1

いくつかの問題点はありますが、 ratio で判定すること自体がイケナイわけではありません。(問題があることを理解した上で判定するのであれば。)また、1度、決めたら判定基準に従うのが無難です。しきい値ギリギリの遺伝子は諦めるのをお勧めします。必ず、どこかで線引きが必要になります。さらに、最近の論文では、マイクロアレイデータだけでは認められず、ほかの実験(リアルタイムPCRなど)の結果も求められることが多いです。そのとき、ほかの実験で結果が出ていれば、ratio の大きさは、あまり問題にされません。いずれにしろ、ほとんどのマイクロアレイデータでは、相当数(数百から千個程度)の遺伝子が発現変動遺伝子と判定されますので、まずは、それらの明らかに変動している遺伝子を中心に結果を見ていくのがよいでしょう。(あえて、微妙な変動を示す遺伝子にこだわる理由があれば別ですが。)

つづきます。

 

簡単!Linuxコマンドでマイクロアレイ解析結果自由自在6

今回も、引き続き、マイクロアレイ解析結果をLinuxコマンドを用いて簡単に操作する方法を紹介していきたいと思います。今回は、端末操作を楽にするコマンドを紹介したいと思います。

端末操作を煩わしく感じるのは、ディレクトリを行き来する際や、同じようなコマンドを何度も入力する時と思います。しかし、ちょっとした工夫で操作が楽しくなるので、活用頂けると幸いです。

使い方① (ディレクトリ移動)
pushd 記憶したいディレクトリ(例:. ~/work, /usr/bin 等)
popd 記憶されたディレクトリに戻る

サンプル>

$ work       # 現在作業中のディレクトリ
pushd .      # pushdで、作業ディレクトリを記憶します。(. はカレント)

$ cd ../temp # 別のディレクトリに移動しました。
             # 移動後、色々なコマンドを使って作業を行います。
popd         # workディレクトリに戻りたい時、popdを使います。

$ work       # 前回記憶した作業ディレクトリに戻ります。

使い方②(以前使用したコマンドを呼び出す)
コマンドプロンプトに対して、[Ctrl を押しながら、 r]

サンプル>

$ work       # 作業中に、以前のコマンドを編集したり、再利用したい場合
             # [Ctrl + r]を押すと、コマンド候補検索用の表示に変わります。

(reverse-i-search)`':
             # ヒントを入力すると、候補コマンドを表示します。
             # 以下は、cuと入力した例です。コマンド群が表示されました。

(reverse-i-search)`cu': cut -f1-3 file1.txt | sort > check/cut_file1.txt
             # 候補が表示された時、リターンキーで、候補が実行されます。
             # カーソルを右や左に移動すると、編集が可能です。
             # 編集が完了したら、リターンで実行します。
 

マイクロアレイデータにおける発現変動遺伝子の定義 (1)

発現変動遺伝子

マイクロアレイデータの正規化の次に行う処理は、「発現変動遺伝子」の抽出です。「発現変動遺伝子」とは、具体的には、シグナル値をコントロールと比較して上がっている(または下がっている)遺伝子のことです。

例えば、ある遺伝子のプローブについて、コントロールとサンプルのシグナル値が下記のようであったとします。

遺伝子名 コントロール サンプル
A 100 200

コントロールのシグナル値が100であるのに対して、サンプルのシグナル値は200です。直感的にサンプルのほうが高いことが分かります。どれくらい大きいかを議論するには、「」を用いる方法と、「」(何倍か)を用いる方法があります。マイクロアレイデータでは、「」を用いることが多いです。この場合、比=サンプル/コントロールを計算します。結果は、200/100 = 2 となります。つまり、遺伝子Aに関して、サンプルのシグナル値はコントロールの2倍に上がっていることになります。「」は、ratio または fold-change と表記されます。

では、何倍に上がっていれば(下がっていれば)、発現変動遺伝子といえるのでしょうか?

発現変動遺伝子の定義

多くの研究者にとって、マイクロアレイ解析に期待するのは、「どの遺伝子の発現が上がっていて、どの遺伝子の発現が下がっているのか」ということだと思います。つまり、どれが発現変動遺伝子なのかということですが、単純そうに見えて、残念ながら、それに対する明確な定義は存在しません。しかしながら、多くの人に用いられている判断基準というものは存在します。それは下記のようなものです。

  • 上がっている遺伝子(発現増加した遺伝子): ratio が2以上。つまり、2倍以上増加した遺伝子。
  • 下がっている遺伝子(発現減少した遺伝子): ratio が0.5以下。つまり、半分以下に減少した遺伝子。

なぜ、”2″ 倍なのかということに対する答えはありません。(科学的または統計的な根拠のある数字ではありません。)とりあえず、2倍以上であれば、「上がっている」ということに対して、多くの人が賛同できるであろうという見込みの数字です。ある研究者が、1.5倍でも上がっていると主張しても、この点に関しては全く問題ありません。

* ratio (fold-change), logFC

論文中において、シグナル値の比は、ratio または fold-change と表記されます。fold-change は省略されて「FC」とも表記されます。log変換されたシグナル値の比が、 “logFC” です。

問題点

ratio を求めるだけであれば、マイクロアレイデータの計算は単純です。データが複雑に感じられるかもしれませんが、遺伝子Aのようなデータを遺伝子の数だけ(例えば4万個)集めたのがマイクロアレイデータです。ratio を求める割り算を4万回繰り返すだけです。

マイクロアレイ解析の難しさは、それ以外のところにあります。2倍以上という基準を用いたとき、1.9倍はどう考えたらよいのでしょうか?また、シグナル値が10から100になったとき、ratioは10ですが、一方で、シグナル値が1,000から10,000になったとき、ratioは同じ10です。同列に扱ってもよいものでしょうか?また、シグナル値が、40,000 から 60,000 になった遺伝子はどうでしょうか? ratio としては 1.5 ですが、20,000増加しています。

つづきます

 

エクセルで log2 変換

エクセルで値を log2 変換する方法の一例です。LOG 関数を使います。

LOG 関数  LOG(数値,底)

セル A1 に変換したい値がある場合、セル B1 に =LOG(A1, 2) と入力します。

セル B1 に 2 を底としたセル A1 の値の対数が求められます。

底の指定がない場合 (=LOG(A1)) は 10 を底とした対数が求められます。

 

 

簡単!Linuxコマンドでマイクロアレイ解析結果自由自在5

今回も、引き続き、マイクロアレイ解析結果をLinuxコマンドを用いて簡単に操作する方法を紹介していきたいと思います。今回は、行の整列に関する操作を扱いたいと思います。

データの昇順/降順の並べ替えは、データのチェック時に良く使用すると思いますが、
他の機能と組合わせて使うと効果なチェックを行ったり、形式を整えたりする事ができます。

使い方
sort data.txt または cat data.txt | sort
# タブ(\t)区切りのテキストファイルを、先頭列をキーにして昇順ソートします。
# 他にも、キーに使用するフィールドの指定や昇順/降順の指定などができます。

サンプル>
$ cat sorttest.txt
orange 100
apple  150
banana 90
grape  300
melon  400
apple  150
# 単純なソート
$ cat sorttest.txt | sort
apple  150
apple  150
banana 90
grape  300
melon  400
orange 100
# 重複チェックと組み合わせ1(重複を除外)
$ cat sorttest.txt | sort | uniq
apple  150
banana 90
grape  300
melon  400
orange 100

# 重複チェックと組み合わせ2(重複のみ抽出)
$ cat sorttest.txt | sort | uniq -d
apple 150