如何用矩形矩阵求解R中的线性方程组

时间:2015-06-03 04:08:58

标签: r

请我尝试使用R-软件解决下面表格中的7x2矩阵问题:

A=array(c(5.54,0.96,1.59,2.07,0.73,10.64,8.28,1.41,3.77,3.11,3.74,2.93,8.29,3.33), c(7,2))
A
#      [,1] [,2]
#[1,]  5.54 1.41
#[2,]  0.96 3.77
#[3,]  1.59 3.11
#[4,]  2.07 3.74
#[5,]  0.73 2.93
#[6,] 10.64 8.29
#[7,]  8.28 3.33
b=c(80814.25,34334.75,47921.75,59514.25,26981.25,63010.25,46646.25)
b
#[1] 80814.25 34334.75 47921.75 59514.25 26981.25 63010.25 46646.25
solve (A,b)
Error in solve.default(A, b) : 'a' (7 x 2) must be square
A %*% solve (A,b)
Error in solve.default(A, b) : 'a' (7 x 2) must be square

您认为我可以做些什么来解决问题。我需要在7x2矩阵中解决两个变量x1和x2,如上所述。

2 个答案:

答案 0 :(得分:5)

当需要方形输入时,您似乎正在使用solve。在?solve中,它讨论了如何将qr.solve用于非平方矩阵。

qr.solve(A,b) 

         [,1]
[1,] 3741.208
[2,] 6552.174

您可能需要检查这是否符合您的目的。还有其他方法可以解决这些类型的问题。这可能对你有帮助。

答案 1 :(得分:1)

SELECT is_read_committed_snapshot_on FROM sys.databases WHERE name= 'YourDatabase'包提供了corpcor函数,用于查找矩形矩阵的逆矩阵:

pseudoinverse