【发布时间】:2013-12-07 05:50:23
【问题描述】:
我正在使用R package NMF 对微阵列表达数据执行非负矩阵分解。我很好地完成了nmf 程序,但想从基础矩阵中提取基因名称(特征)。基矩阵是nmf 之后的结果矩阵之一,行为基因名称,列为元基因数(分解等级)。
该包有一个称为extractFeatures() 的函数,它将对矩阵进行评分并返回符合我评分标准的特征(基因名称)。假设在运行 NMF(最终的 NMF 对象称为 x)后,我有 4 个元基因列(秩 = 4)作为基础矩阵。当我运行s <- extractFeatures(x) 时,我得到一个 R“列表”,其中包含 4 个包含整数的向量:
> 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 个特征),然后只获取第二个元基因的基因名称(243 个特征)等等。
任何想法将不胜感激。谢谢!
【问题讨论】:
标签: r sparse-matrix