问题描述
我有一个 316x316 的矩阵 (https://www.dropbox.com/s/7qjo025p2ea59dg/data.rda?dl=0)。
当我使用 solve
反转它时,出现错误:
> ans1 <- solve(data)
Error in solve.default(data) :
system is computationally singular: reciprocal condition number = 3.73244e-17
当我使用 chol2inv
反转它时,我得到一个矩阵,其中每个值都是 1.492617e+12
> ans2 <- chol2inv(chol(data))
> head(ans2[1:3,1:3])
[,1] [,2] [,3]
[1,] 1.492617e+12 1.492617e+12 1.492617e+12
[2,] 1.492617e+12 1.492617e+12 1.492617e+12
[3,] 1.492617e+12 1.492617e+12 1.492617e+12
当我使用 ginv
反转它时,我得到了一个仍然不同的结果:
> library(MASS)
> ans3 <- ginv(data)
> head(ans3[1:3,1:3])
[,1] [,2] [,] 11.16048596 0.02262223 -0.5915676
[2,] 0.02262223 12.07619895 0.4329126
[3,] -0.59156765 0.43291261 23.1798179
是否有人想过导致这些差异的原因和/或在这种情况下应该如何处理?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)