0

R パッケージ NMFを使用して、マイクロアレイ発現データに対して非負行列因数分解を実行しています。手順はうまくいきましたnmfが、基底行列から遺伝子名 (特徴) を抽出したいと考えています。基底行列はnmf、行に遺伝子名、列にメタ遺伝子番号 (因子分解ランク) が続く結果の行列の 1 つです。

パッケージには、これを行うための関数がありextractFeatures()、マトリックスをスコアリングし、スコアリング基準に適合する機能 (遺伝子名) を返します。NMF (と呼ばれる最終的な NMF オブジェクトx) を実行した後、基底行列に 4 つのメタ遺伝子列 (ランク = 4) があったとします。実行するs <- extractFeatures(x)と、整数を含む 4 つのベクトルを含む R の「リスト」が得られます。

> class(s)
[1] "list"

> str(s)
List of 4
 $ : int [1:575] 569 4857 4 51 91 9627 6359 2522 118 163 ...
 $ : int [1:243] 3 1 11834 106 2 52 3855 1103 6 1510 ...
 $ : int [1:37] 11922 11890 11521 11888 11648 11388 9340 11520 9854 11670 ...
 $ : int [1:808] 6123 9125 11918 10432 9674 2109 11802 8372 11746 6996 ...
 - attr(*, "method")= chr "kim"

(以下のコードでは、簡潔にするために結果の一部が削除されています)

> s
[[1]]
  [1]   569  4857     4    51 

[[2]]
  [1]     3     1 11834   106     2    52  3855  1103     6  1510    14    49

[[3]]
 [1] 11922 11890 11521

[[4]]
 [1]  6123  9125 11918 10432  9674  2109

質問 1: これらの整数は何ですか? それらは、私のマトリックスからの「機能」(つまり、遺伝子名)であるはずです。なぜ遺伝子名ではなく整数なのですか? それらの整数は何らかの形で私の遺伝子名に対応していますか?

質問 2: 個々のベクターから遺伝子名を分離する方法 (リスト内s)。たとえば、最初のメタ遺伝子 (575 の機能) の遺伝子名のみを取得し、次に 2 番目のメタ遺伝子 (243 の機能) の遺伝子名のみを取得したいなどです。

どんなアイデアでも大歓迎です。ありがとう!

4

1 に答える 1

1

整数はあなたの遺伝子のインデックスだと思います

http://nmf.r-forge.r-project.org/scores.html

extractFeatures は、選択された特徴をインデックスのリスト、単一の整数ベクトル、または選択された特徴のみを含む object と同じクラスのオブジェクトとして返します。

于 2013-12-06T21:50:23.317 に答える