侦探R错误:系统在计算上是单数的

时间:2018-01-11 04:51:51

标签: r bioinformatics bioconductor

我正在与Kallisto和Sleuth合作分析一些RNA seq数据。我有一组对照黄斑数据和一组与AMD的黄斑数据。我试图分析两组之间的差异基因表达。

 so <- sleuth_fit(so, ~sample + Condition,'full')
 so <- sleuth_fit(so, ~Tissue, 'Tissue')
 models(so)

我已经创建了我的侦探对象,现在我正在尝试拟合模型,以便我可以运行线性回归和wald测试。

 > so <- sleuth_fit(so, ~sample + Condition,'full')
 Error in solve.default(t(X) %*% X) : 
 system is computationally singular: reciprocal condition number = 3.82836e-18

运行这些时,我无法通过创建第一个模型,因为我收到的错误是系统在计算上是单数的。

build.gradle

有谁知道如何解决这个问题?我相信我的设计表有问题,但我想不出如何解决它。

谢谢!

1 个答案:

答案 0 :(得分:2)

这是一个可怕的linear combination问题的实例。在您的情况下,Conditionsample.的线性组合。解决方案是从设计中删除样本,因为您没有对此因素进行任何重复,并且可能对它不感兴趣。 Tissue只有一个级别,所以包含它也没有意义。你想要的是:

so <- sleuth_fit(so, ~ Condition, 'full')
so <- sleuth_fit(so, ~1, 'reduced')

有关分析具有相同设计的数据集的示例,请参阅here