una sistema simultaneas para metodos ejercicios ecuación ecuaciones r equation-solving

sistema - resolver una ecuación en r



Resolviendo ecuaciones simultáneas con R (4)

Esto debería funcionar

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

Supongamos que tengo las siguientes ecuaciones:

x + 2y + 3z = 20 2x + 5y + 9z = 100 5x + 7y + 8z = 200

¿Cómo resuelvo estas ecuaciones para x , y y z ? Me gustaría resolver estas ecuaciones, si es posible, usando R o cualquier otra herramienta de computadora.


Otro enfoque es modelar las ecuaciones usando lm siguiente manera:

lm(b ~ . + 0, data = data.frame(x = c(1, 2, 5), y = c(2, 5, 7), z = c(3, 9, 8), b = c(20, 100, 200)))

que produce

Coefficients: x y z 320 -360 140

Si usa el paquete tibble , incluso puede hacer que se lea como las ecuaciones originales:

lm(b ~ . + 0, tibble::tribble( ~x, ~y, ~z, ~b, 1, 2, 3, 20, 2, 5, 9, 100, 5, 7, 8, 200))

que produce la misma salida.


Para mayor claridad, modifiqué la forma en que se construyeron las matrices en la respuesta anterior.

a <- rbind(c(1, 2, 3), c(2, 5, 9), c(5, 7, 8)) b <- c(20, 100, 200) solve(a, b)

En caso de que tengamos que mostrar fracciones:

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

Tenga en cuenta que esto es una matriz cuadrada!