Ответ 1
Это должно работать
A <- matrix(data=c(1, 2, 3, 2, 5, 9, 5, 7, 8), nrow=3, ncol=3, byrow=TRUE)
b <- matrix(data=c(20, 100, 200), nrow=3, ncol=1, byrow=FALSE)
round(solve(A, b), 3)
[,1]
[1,] 320
[2,] -360
[3,] 140
Предположим, что у меня есть следующие уравнения:
x + 2y + 3z = 20
2x + 5y + 9z = 100
5x + 7y + 8z = 200
Как решить эти уравнения для x
, y
и z
? Я хотел бы решить эти уравнения, если это возможно, с помощью R или любых других компьютерных инструментов.
Это должно работать
A <- matrix(data=c(1, 2, 3, 2, 5, 9, 5, 7, 8), nrow=3, ncol=3, byrow=TRUE)
b <- matrix(data=c(20, 100, 200), nrow=3, ncol=1, byrow=FALSE)
round(solve(A, b), 3)
[,1]
[1,] 320
[2,] -360
[3,] 140
Для ясности я изменил способ построения матриц в предыдущем ответе.
a <- rbind(c(1, 2, 3),
c(2, 5, 9),
c(5, 7, 8))
b <- c(20, 100, 200)
solve(a, b)
Если нам нужно отобразить дроби:
library(MASS)
fractions(solve(a, b))
A <- matrix(data=c(1, 2, 3, 2, 5, 9, 5, 7, 8),nrow=3,ncol=3,byrow=TRUE)
b <- matrix(data=c(20, 100, 200),nrow=3,ncol=1,byrow=FALSE)
solve(A)%*% b
Заметим, что это квадратная матрица!