来自R中的NMF包的extractFeatures()返回microRNA数据的空列表

时间:2015-04-30 11:03:34

标签: r feature-extraction

我正在使用R中的NMF包对RNAseq / microRNAseq数据进行非负矩阵分解。

我的第一次尝试是使用已记录的RNAseq数据(FPKM数据矩阵),删除空行并转换为符合非负性要求。这非常有效。 extractFeatures()函数返回了一个索引列表,然后我可以使用它来列出每个特征中的基因并执行功能(基于GO)分析。耶!

然后,我决定尝试使用microRNA数据(再次FPKM数据矩阵)处理与RNAseq数据完全相同的方法。

数据看起来像这样

                   SampleA      SampleB     SampleC     SampleD     SampleE
hsa-let-7a-2-3p    0.000000    0.000000    0.000000   0.8858701    0.000000
hsa-let-7a-3p      8.723701   10.169876    8.041837   8.3992046    8.109053
hsa-let-7a-5p     14.996682   12.861308   13.739875  14.0245517   13.901233
hsa-let-7b-3p      4.911069    0.000000    5.399995   5.7433124    5.553784
hsa-let-7b-5p     11.758403   10.788349   11.648344  12.0864421   11.909324
hsa-let-7c        10.480125    6.378711   11.214152  10.2060951   10.852412

我已经完成了排名优化步骤并找到了最佳排名(此处为4)。接下来,我像这样运行nmf函数(最简单的版本)。

res.mir <- nmf(data,4)

然后,我尝试从这个对象中提取特征,我得到了这个....

> s<-extractFeatures(res.mir)
> s
[[1]]
<NA>
  NA

[[2]]
<NA>
  NA

[[3]]
<NA>
  NA

[[4]]
<NA>
  NA

attr(,"method")
[1] "kim"

我设法获取要素指数的唯一时间是我使用

s1<-extractFeatures(res.mir,method="max")
> s1
[[1]]
<NA>
  NA

[[2]]
[1] 923

[[3]]
[2] 258  20 308 561 591

[[4]]
<NA>
  NA

attr(,"method")
[1] "max"

但是,在这种情况下,我只获得了一些功能的索引而不是全部4.奇怪的是,我可以看到4个功能!

问题

  1. 有没有人对如何从NMFfitX1对象中获取功能有任何建议?
  2. 或者,有人知道为什么我会被退回一个空名单吗?
  3. 非常感谢您的时间!

1 个答案:

答案 0 :(得分:0)

尝试extractFeatures(res.mir, 30),这意味着每个组件中的前30个功能。但是我不知道为什么它会返回NAs默认值。