求解线性方程组 R - 验证
Solving System of Linear Equations R - Verification
所以我设法在 R 中求解了这个线性方程组:
x–y+z=1, x+y–z=1 and 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)
但是,我需要通过替换 x、y 和 z 的值来证明我的解决方案是正确的。显然,这很容易通过使用矩阵运算的一行代码来完成。谁能帮我吗?提前致谢。
你给方程式加上了一个负号,实际上是一个破折号,但在更正错误后,我们可以转换这些方程式并评估解决方案。在这种情况下,结果是准确的,但在大多数其他情况下,您可能希望使用 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
在认识到“-”与“–”不同之前,我得到:
Error: unexpected input in "eval( substitute( x‚"
所以我设法在 R 中求解了这个线性方程组:
x–y+z=1, x+y–z=1 and 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)
但是,我需要通过替换 x、y 和 z 的值来证明我的解决方案是正确的。显然,这很容易通过使用矩阵运算的一行代码来完成。谁能帮我吗?提前致谢。
你给方程式加上了一个负号,实际上是一个破折号,但在更正错误后,我们可以转换这些方程式并评估解决方案。在这种情况下,结果是准确的,但在大多数其他情况下,您可能希望使用 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
在认识到“-”与“–”不同之前,我得到:
Error: unexpected input in "eval( substitute( x‚"