#Matriz Insumo-Produto
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
#Dados
X=rbind(c(90,100),
c(80,50))
D=rbind(c(200),c(300))
VBP<-data.frame(cbind(X,D))
colnames(VBP)<-c("Xa","Xb","D")
VBP<-transmute(VBP, VBP=Xa+Xb+D)
#Coeficiente tecnicos de produção
A=round(cbind(X[,1]/VBP[1,1], X[,2]/VBP[2,1]),4)
#matriz inversa de leontief
I=diag(rep(1,nrow(D)))
L=solve(I-A)
#VBP inicial
Y0=L%*%D; Y0
## [,1]
## [1,] 390.0412
## [2,] 430.0073
#Choque Econômico
choque=20
D1=rbind(c(200),c(300+choque))
Y1=L%*%D1
#Impacto Total
Y1-Y0
## [,1]
## [1,] 7.360343
## [2,] 24.340394
#Impacto Direto
A[1,2]*choque #NO SETOR A
## [1] 4.652
A[2,2]*choque #NO SETOR B
## [1] 2.326
20/VBP[2,1]*choque #M DE A
## [1] 0.9302326