线性方程组求解系统R-验证

线性方程组求解系统R-验证,r,matrix,linear-programming,R,Matrix,Linear Programming,所以我设法在R中解出了这个线性方程组: x-y+z=1、x+y-z=1和x+y+z=3 我的代码如下: A <- matrix(data=c(1, -1, 1, 1, 1, -1, 1, 1, 1), nrow=3, ncol=3, byrow=TRUE) b <- matrix(data=c(1, 1, 3), nrow=3, ncol=1, byrow=FALSE) round(solve(A, b), 3) A你给了方程一个负号,实际上是一个破折号,但是在纠正了这个错误

所以我设法在R中解出了这个线性方程组:

x-y+z=1、x+y-z=1和x+y+z=3

我的代码如下:

A <- matrix(data=c(1, -1, 1, 1, 1, -1, 1, 1, 1), nrow=3, ncol=3, byrow=TRUE) 

b <- matrix(data=c(1, 1, 3), nrow=3, ncol=1, byrow=FALSE)

round(solve(A, b), 3)

A你给了方程一个负号,实际上是一个破折号,但是在纠正了这个错误之后,我们可以转换这些方程并评估解决方案。在这种情况下,结果是准确的,但在大多数其他情况下,您可能希望使用
all.equal
强制执行测试

eval( substitute( x-y+z==1 && x+y-z==1 && x+y+z==3, list(x=1,y=1,z=1) ) )
[1] TRUE
在认识到“-”与“我得到的”不同之前:

错误:“评估(替代)(x)”中的意外输入


你给方程加了一个负号,实际上是一个破折号,但是在纠正错误后,我们可以转换这些方程并评估解决方案。在这种情况下,结果是准确的,但在大多数其他情况下,你可能希望使用
all.equal
进行测试

eval( substitute( x-y+z==1 && x+y-z==1 && x+y+z==3, list(x=1,y=1,z=1) ) )
[1] TRUE
在认识到“-”与“我得到的”不同之前:

错误:“评估(替代)(x)”中的意外输入


你可以把系数矩阵乘以解,这应该给你的解:
b
all(A%*%solve(A,b)==b)
你可以把系数矩阵乘以解
,它应该为您提供
b
all(A%*%solve(A,b)==b)