Universidade Federal da Paraíba

Programa de Pós-Graduação em Economia

#-----------------------------------------------
# Matriz Insumo-Produto
# Hilton M B Ramalho - PPGE/UFPB
# Exemplo 8.1, p.186 do livro: 
# Matemática para Economistas (Simon & Blume)
#-----------------------------------------------

# Configurações iniciais
options(OutDec=",")

# leitura de dados CSV (EXCEL)
arquivo <- pipe("curl -s -S https://dl.dropboxusercontent.com/u/47174844/cursos/economia_matematica/modulo1_insumo_produto.csv")
dados <- read.table(arquivo, header=TRUE, sep=";", dec=",")
dados
##      NF    MF    MB    NB     E     S     DE
## 1 0,170 0,004 0,000 0,029 0,000 0,008  99640
## 2 0,003 0,295 0,018 0,002 0,004 0,016  75548
## 3 0,025 0,173 0,460 0,007 0,011 0,007  14444
## 4 0,348 0,037 0,021 0,403 0,011 0,048  33501
## 5 0,007 0,001 0,039 0,025 0,358 0,025  23527
## 6 0,120 0,074 0,104 0,123 0,173 0,234 263985
# matriz de coeficientes técnicos
A <- as.matrix(dados[,1:6])
rownames(A) <- names(dados)[-length(names(dados))]
colnames(A) <- names(dados)[-length(names(dados))]
A
##       NF    MF    MB    NB     E     S
## NF 0,170 0,004 0,000 0,029 0,000 0,008
## MF 0,003 0,295 0,018 0,002 0,004 0,016
## MB 0,025 0,173 0,460 0,007 0,011 0,007
## NB 0,348 0,037 0,021 0,403 0,011 0,048
## E  0,007 0,001 0,039 0,025 0,358 0,025
## S  0,120 0,074 0,104 0,123 0,173 0,234
# matriz de demanda final
c <- as.matrix(dados[,7])
colnames(c) <- names(dados)[length(names(dados))]
rownames(c) <- names(dados)[-length(names(dados))]
c
##        DE
## NF  99640
## MF  75548
## MB  14444
## NB  33501
## E   23527
## S  263985
# criar matriz identidade
I <- diag(nrow(A))
# matriz I-A
IA <- I-A

# solução do sistema
x <- solve(IA)%*%c
x
##           DE
## NF 131033,21
## MF 120458,90
## MB  80680,56
## NB 178732,04
## E   66929,26
## S  431562,04