如何在 R 中求解联立线性方程?
联立方程组中的数据可以读作矩阵,然后我们可以求解这些矩阵以找到变量的值。例如,如果我们有三个方程式 −
x + y + z = 6 3x + 2y + 4z = 9 2x + 2y – 6z = 3
那么我们将把这些方程式转换为矩阵,并使用 R 中的求解函数求解它们。
示例1
> A<-matrix(c(1,1,2,3,2,4,2,3,-6),nrow=3,byrow=TRUE) > A
输出
[,1] [,2] [,3] [1,] 1 1 2 [2,] 3 2 4 [3,] 2 3 -6
> b<-matrix(c(6,9,3)) > b
输出
[,1] [1,] 6 [2,] 9 [3,] 3
> solve(A,b)
输出
[,1] [1,] -3.0 [2,] 6.0 [3,] 1.5
因此,答案是 x = -3,y = 6,z = 1.5。
4x - 3y + x = -10 2x + y + 3z = 0 -1x + 2y - 5z = 17
示例2
> A<-matrix(c(4,-3,1,2,1,3,-1,2,-5),nrow=3,byrow=TRUE) > A
输出
[,1] [,2] [,3] [1,] 4 -3 1 [2,] 2 1 3 [3,] -1 2 -5
> b<-matrix(c(-10,0,17)) > b
输出
[,1] [1,] -10 [2,] 0 [3,] 17
> solve(A,b)
输出
[,1] [1,] 1 [2,] 4 [3,] -2
示例3
4x – 2y + 3z = 1 x + 3y – 4z = -7 3x + y + 2z = 5
> A<-matrix(c(4,-2,3,1,3,-4,3,1,2),nrow=3,byrow=TRUE) > A
输出
[,1] [,2] [,3] [1,] 4 -2 3 [2,] 1 3 -4 [3,] 3 1 2
> b<-matrix(c(1,-7,5)) > b
输出
[,1] [1,] 1 [2,] -7 [3,] 5
> solve(A,b)
输出
[,1] [1,] -1 [2,] 2 [3,] 3
示例4
x + 2y – 3z + 4t = 12 2x + 2y – 2z + 3t = 10 y + z = -1 x - y + z – 2t = -4
> A<-matrix(c(1,2,-3,4,2,2,-2,3,0,1,1,0,1,-1,1,-2),nrow=4,byrow=TRUE) > A
输出
[,1] [,2] [,3] [,4] [1,] 1 2 -3 4 [2,] 2 2 -2 3 [3,] 0 1 1 0 [4,] 1 -1 1 -2
> b<-matrix(c(12,10,-1,-4)) > b
输出
[,1] [1,] 12 [2,] 10 [3,] -1 [4,] -4
> solve(A,b)
输出
[,1] [1,] 1 [2,] 0 [3,] -1 [4,] 2
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP