Ejercicios Resueltos: Algebra Matricial - Matriz Insumo Producto

Versión en desarrollo y para revisión ante consulta rápida.

Consulta Relacionada: Algebra Matricial | Matriz Insumo Producto

La matriz de insumo producto.

“…un cuadro de doble entrada donde cada sector productivo se representa tanto en las filas y en las columnas. Por filas se presenta la producción que las actividades económicas realizan destinada a la demanda intermedia (consumo intermedio) o a la demanda final.”

La suma de ambos destinos (intermedio y final) de los bienes y servicios de cada sector representa su valor de producción.

La estructura básica de la matriz:

# Insumos   |Demanda intermedia                     |DF |Producto total
# ------------------------------------------------------------------------------------
#           |Sector 1 |Sector 2 |Sector 3 |. |Sector n  |   |
# Sector 1  |x11      |x12      |x13      |. |x1n       |y1 |X1
# Sector 2  |x21      |x22      |x23      |. |x2n       |y2 |X2
# Sector 3  |x31      |x32      |x33      |. |x3n       | y3|X3
# .         |         |         |         |. |          |   |
# Sector n  |xn1      |xn2      |xn3      |. |xnn       |yn |xn
# Valor Agre| v1      |v2       |v3       |. |vn        |   |
# Insumo Tot|x1       |x2       |x3       |. |xn        |   |

Donde:

\(x1 = x11 + x12 + x13 + . + x1n + y1\)

\(x1: Demanda Total sector 1\)

\(y1: demanda final sector 1\)

Dada la siguiente matriz

#Valores generados a partir de las nociones económicas (para datos reales consultar artículo Matriz Insumo Producto)

IO_m <- matrix(data= c(
   7,35,47.6,1800,
  49.5,150,1800,200,
  24.7,49.4,0,900,
  1808.4,1965.1,-873.5, NA,
  81.2,234.4,1847.6,NA
), nrow=5, ncol=4, byrow = TRUE)

dimnames(IO_m) <- list(c("x",   "y", "z",   "Valor_Agregado",   "PIB"),
                       c("x",   "y",    "z",    "Demanda_Final"))

Nota general respecto a los códigos: hay funciones de alto nivel en R que pudieran simplificar algunas instrucciones desarrolladas; sin embargo, la consulta es ante un incipiente aprendizaje de R (etapa en que es vital la intuición y funcionamiento a nivel primitivo) y que debe asimilar el racionamiento económico/matemático detras de nociones en que se aplica (Matriz Input-Output).


La matriz de coeficientes técnicos

\[x _{ij} = a_{ij} * x_j\] \[-> a_{ij} = x_{ij} / x_j\]

#Matriz de coeficientes técnicos


CoefT <- matrix(nrow = 3, ncol = 3)

for (i in 1:3) {
  for (j in 1:3) {
    print(c(i,j)) #print solo para intuición visualizando secuencia de generación
    print(CoefT[i,j] <- IO_m[i,j]/(sum(IO_m[i,]))) #print solo para intuición visualizando secuencia de generación
  }
  
}
## [1] 1 1
## [1] 0.003704488
## [1] 1 2
## [1] 0.01852244
## [1] 1 3
## [1] 0.02519052
## [1] 2 1
## [1] 0.02250511
## [1] 2 2
## [1] 0.06819732
## [1] 2 3
## [1] 0.8183678
## [1] 3 1
## [1] 0.02535674
## [1] 3 2
## [1] 0.05071348
## [1] 3 3
## [1] 0
dimnames(CoefT) <- list(c("x",  "y", "z"),
                       c("x",   "y",    "z"))


CoefT
##             x          y          z
## x 0.003704488 0.01852244 0.02519052
## y 0.022505115 0.06819732 0.81836781
## z 0.025356740 0.05071348 0.00000000
#Demanda total e intermedia


demandaT <- matrix(nrow=nrow(IO_m), ncol = 1)
  for (i in 1:nrow(IO_m)){
    demandaT[i,]<- (sum(IO_m[i,]))
  }

rownames(demandaT) <- rownames(IO_m)


demandaIt <- matrix(nrow=3, ncol = 1)
  for (i in 1:3){
    demandaIt[i,]<- (sum(IO_m[i,1:3]))
  }

#Validation

# Demanda Total sector X1 = x11 +   x12 +   x13 +   . + x1n +   demanda final
# donde "x11 +  x12 +   x13 +   . + x1n" es la demanda intermedia
#validando DemadaT = demandaIt + demanda final

for (i in 1:3) {
  print(
  (demandaIt[i,] + IO_m[i,"Demanda_Final"]) == demandaT[i,]
  )
}
##    x 
## TRUE 
##    y 
## TRUE 
##    z 
## TRUE

Nuevo nivel de demanda total ante cambio en demanda final

1950 (x), 250 (y) y 950 (z)

DemF2 <- c(1950,    250,    950)

IO_m2 <- IO_m

absolu <- rep(NA, length.out =length(DemF2))
relat <- rep(NA, length.out =length(DemF2))

for (i in 1:length(DemF2)) {
  IO_m2[i,"Demanda_Final"] <- DemF2[i]
  
  absolu[i] <- sum(IO_m2[i,])-sum(IO_m[i,])
  
  relat[i] <-((sum(IO_m2[i,]) / sum(IO_m[i,]))-1)*100
}



demandaT_delta <- matrix(data = c(absolu, relat), ncol = 2, byrow = FALSE)
dimnames(demandaT_delta) <- list( c("x", "y", "z"),
                                  c("Abs", "Relt%"))
demandaT_delta
##   Abs    Relt%
## x 150 7.938188
## y  50 2.273244
## z  50 5.132943

Para determinación de equilibrio

Aplicamos algebra matricial a partir de la determinación de la matriz inversa de Leontief, relacionando la producción de cada sector con la demanda total.

Consulta Relacionada: Algebra Matricial | Matriz Insumo Producto

Entradas populares

SQL