Introdução

Este notebook apresenta os dados utilizados na primeira estória do projeto Gastos Abertos.

Dados

Obtenção dos Dados

Os dados são separados em 12 arquivos, um para cada mês de 2014, através do site da prefeitura de SP.

library(knitr)

meses <- sprintf("%02d", 1:12)
for(mes in meses){
    url <- paste0("http://orcamento.prefeitura.sp.gov.br/orcamento/uploads/2014/qdd_",mes,"2014.xls")
    savePath <- paste0("executado_",mes,"2014.xls")
    download.file(url, destfile=savePath)
} 

Tabela de Dados

Colocamos em memoria os 12 arquivos para os próximos passos de pre-processamento e salvamos em formato rds para simplificar o carregamento para analises posteriores.

library(xlsx)
workbook <- list()
for(mes in meses){
    loadPath <- paste0("executado_",mes,"2014.xls")
    workbook[[mes]] <- read.xlsx(loadPath,1,header=TRUE)    
}
saveRDS(workbook,"workbook.rds")

A tabela a seguir demonstra as primeiras 6 linhas do mês de janeiro.

workbook <- readRDS("workbook.rds")
kable(head(workbook[["01"]],6))
DataInicial DataFinal Cd_AnoExecucao Cd_Exercicio Cd_Orgao Ds_Orgao Cd_Unidade Ds_Unidade ProjetoAtividade Cd_Despesa Sld_Orcado_Ano Vl_Atualizado Vl_EmpenhadoLiquido Vl_Liquidado
2014-01-01 2014-01-31 23:59:58 2014 2014 01 AUTARQUIA HOSPITALAR MUNICIPAL 10 AUTARQUIA HOSPITALAR MUNICIPAL 1220 - DESENVOLVIMENTO DE SISTEMAS DE INFORMAÇÃO E COMUNICAÇÃO 4.4.90.39-OUTROS SERVIÇOS DE TERCEIROS - PESSOA JURÍDICA 10000 10000 0 0
2014-01-01 2014-01-31 23:59:58 2014 2014 01 AUTARQUIA HOSPITALAR MUNICIPAL 10 AUTARQUIA HOSPITALAR MUNICIPAL 2029 - E240 - HOSPITAL MUNICIPAL VEREADOR STOROPOLI (RUA FRANCISCO FANGANIELLO, 127 - PQ.NOVO MUNDO) - COMPRA DE MATERIAL PERMANENTE 4.4.90.52-EQUIPAMENTOS E MATERIAL PERMANENTE 200000 200000 0 0
2014-01-01 2014-01-31 23:59:58 2014 2014 01 AUTARQUIA HOSPITALAR MUNICIPAL 10 AUTARQUIA HOSPITALAR MUNICIPAL 2030 - E2666 - HOSPITAL MUNICIPAL VEREADOR JOSÉ STOROPOLLI NA VILA MARIA, PARA AQUISIÇÃO DE ECO-CARDIOGRAMA E ULTRA-SOM. 4.4.90.52-EQUIPAMENTOS E MATERIAL PERMANENTE 100000 100000 0 0
2014-01-01 2014-01-31 23:59:58 2014 2014 01 AUTARQUIA HOSPITALAR MUNICIPAL 10 AUTARQUIA HOSPITALAR MUNICIPAL 2031 - E241 - HOSPITAL MUNICIPAL TATUAPÉ DR.CARMINO CARICCHIO (AV.CELSO GARCIA, 4815 - TATUAPÉ) - COMPRA DE MATERIAL PERMANENTE 4.4.90.52-EQUIPAMENTOS E MATERIAL PERMANENTE 500000 500000 0 0
2014-01-01 2014-01-31 23:59:58 2014 2014 01 AUTARQUIA HOSPITALAR MUNICIPAL 10 AUTARQUIA HOSPITALAR MUNICIPAL 2032 - E1940 - HOSPITAL CÁRMINO CARICCHIO(HOSPITAL DO TATUAPÉ) - OPERAÇÃO/MANUTENÇÃO, PRONTO ATENDIMENTO 3.3.90.39-OUTROS SERVIÇOS DE TERCEIROS - PESSOA JURÍDICA 1000 1000 0 0
2014-01-01 2014-01-31 23:59:58 2014 2014 01 AUTARQUIA HOSPITALAR MUNICIPAL 10 AUTARQUIA HOSPITALAR MUNICIPAL 2100 - ADMINISTRAÇÃO DA UNIDADE 3.1.90.11-VENCIMENTOS E VANTAGENS FIXAS - PESSOAL CIVIL 328419352 328419352 311100000 23570996

Modelo de Dados

Infelizmente, a fonte de dados utilizada não possui um dicionario de dados. No entanto, a partir dos dados, podemos observar que cada linha especifica a despesa Cd_Despesa de um projeto de atividade ProjetoAtividade desempenhado por uma Unidade Cd_Unidade,Ds_Unidade pertencente a um orgão Cd_Orgao, Ds_Orgaodo governo.

As siglas significam:

  • Cd: Código
  • Ds: Descrição
  • Sld: Saldo
  • Vl: Valor

Por exemplo:

kable(workbook[["01"]][218:222,c("Ds_Orgao","Ds_Unidade","ProjetoAtividade","Cd_Despesa")])
Ds_Orgao Ds_Unidade ProjetoAtividade Cd_Despesa
218 SECRETARIA DO GOVERNO MUNICIPAL ADMINISTRAÇÃO DO EDIFÍCIO MATARAZZO 2100 - ADMINISTRAÇÃO DA UNIDADE 3.3.90.36-OUTROS SERVIÇOS DE TERCEIROS - PESSOA FÍSICA
219 SECRETARIA DO GOVERNO MUNICIPAL ADMINISTRAÇÃO DO EDIFÍCIO MATARAZZO 2100 - ADMINISTRAÇÃO DA UNIDADE 3.3.90.39-OUTROS SERVIÇOS DE TERCEIROS - PESSOA JURÍDICA
220 SECRETARIA DO GOVERNO MUNICIPAL ADMINISTRAÇÃO DO EDIFÍCIO MATARAZZO 2100 - ADMINISTRAÇÃO DA UNIDADE 4.4.90.52-EQUIPAMENTOS E MATERIAL PERMANENTE
221 SECRETARIA MUNICIPAL DE COORDENAÇÃO DAS SUBPREFEITURAS GABINETE DO SECRETARIO 1097 - E2090 - REVITALIZAÇÃO E IMPLANTAÇÃO DE EQUIPAMENTOS COM APARELHOS DE GINÁSTICA NA PRAÇA JAGUAMITANGA 4.4.90.51-OBRAS E INSTALAÇÕES
222 SECRETARIA MUNICIPAL DE COORDENAÇÃO DAS SUBPREFEITURAS GABINETE DO SECRETARIO 1137 - PAVIMENTAÇÃO E RECAPEAMENTO DE VIAS 4.4.90.51-OBRAS E INSTALAÇÕES

Para cada despesa Cd_Despesa de um projeto ProjetoAtividade é exibida a movimentação do recurso durante todo o mês (não é possível obter a informação em um menor intervalo de tempo). Especificamente, esta movimentação pode ser observada através de 4 valores. Os dois primeiros especificam quanto foi alocado para despesa Cd_Despesa para todo o ano Sld_Orcado_Ano e possíveis correções nesta alocação anual Vl_Atualizado.

Os dois valores restantes indicam o valor de obrigação que deve ser pago no mês em questão Vl_EmpenhadoLiquido determinado por autoridade competente e quanto deste valor foi pago ao credor Vl_Liquidado após confirmada que este realizou o projeto de atividade ProjetoAtividade e a sua associada despesa Cd_Despesa para o dado mês.

Por exemplo, observemos a seguinte despesa da Autarquia Hospitalar Municipal em janeiro:

kable(workbook[["01"]][25,c("Ds_Unidade","ProjetoAtividade","Cd_Despesa","Sld_Orcado_Ano","Vl_Atualizado","Vl_EmpenhadoLiquido","Vl_Liquidado")])
Ds_Unidade ProjetoAtividade Cd_Despesa Sld_Orcado_Ano Vl_Atualizado Vl_EmpenhadoLiquido Vl_Liquidado
25 AUTARQUIA HOSPITALAR MUNICIPAL 4103 - OPERAÇÃO E MANUTENÇÃO DAS UNIDADES HOSPITALARES, PRONTO SOCORROS E PRONTO ATENDIMENTO 3.3.50.39-OUTROS SERVIÇOS DE TERCEIROS - PESSOA JURÍDICA 55602315 55602315 26567618 0

e em fevereiro:

kable(workbook[["02"]][25,c("Ds_Unidade","ProjetoAtividade","Cd_Despesa","Sld_Orcado_Ano","Vl_Atualizado","Vl_EmpenhadoLiquido","Vl_Liquidado")])
Ds_Unidade ProjetoAtividade Cd_Despesa Sld_Orcado_Ano Vl_Atualizado Vl_EmpenhadoLiquido Vl_Liquidado
25 AUTARQUIA HOSPITALAR MUNICIPAL 4103 - OPERAÇÃO E MANUTENÇÃO DAS UNIDADES HOSPITALARES, PRONTO SOCORROS E PRONTO ATENDIMENTO 3.3.50.39-OUTROS SERVIÇOS DE TERCEIROS - PESSOA JURÍDICA 55602315 55602315 26567618 10777822

É observável que durante janeiro, foi determinada por autoridade competente Vl_Empenhado_Liquido o valor liquido de R$ 265.676,18 a ser pago por serviço a ser prestado (possivelmente através de contrato com empresas). Em fevereiro, parte deste serviço é comprovada e paga no valor de R$ 107.778,22.

Em março:

kable(workbook[["03"]][25,c("Ds_Unidade","ProjetoAtividade","Cd_Despesa","Sld_Orcado_Ano","Vl_Atualizado","Vl_EmpenhadoLiquido","Vl_Liquidado")])
Ds_Unidade ProjetoAtividade Cd_Despesa Sld_Orcado_Ano Vl_Atualizado Vl_EmpenhadoLiquido Vl_Liquidado
25 AUTARQUIA HOSPITALAR MUNICIPAL 4103 - OPERAÇÃO E MANUTENÇÃO DAS UNIDADES HOSPITALARES, PRONTO SOCORROS E PRONTO ATENDIMENTO 3.3.50.39-OUTROS SERVIÇOS DE TERCEIROS - PESSOA JURÍDICA 55602315 55602315 54068499 21840587

podemos notar que o valor empenhado cresce, bem como o liquidado. Nota-se também que estes valores são cumulativos ao invés de indicar o custo associado ao mês. Por fim, podemos observar esta transição através de um gráfico:

library(reshape) #Formatação
library(scales) #Formatar com virgulas ao inves de notação cientifica Y axis 
library(GGally) #Grafico 
library(ggplot2) #Grafico 
science_theme = theme( #Tema
    panel.background=element_blank(), 
    axis.line=element_blank(),
    text = element_text(size=15, family="Interstate"),
    axis.text.x = element_text(hjust = 0, size=15,color="black"), 
    axis.text.y = element_text(hjust = 0, size=15,color="black"), 
    axis.title.y=element_text(size=15), 
    axis.title.x=element_text(size=15),
    axis.ticks = element_line(colour=NA),
    panel.grid.major = element_line(colour = 'gray', linetype = 'dashed'),
    panel.grid.minor = element_line(colour = NA),  
    panel.background = element_rect(colour = 'white'))

Empenhado <- sapply(workbook,"[",25,"Vl_EmpenhadoLiquido")
Liquidado <- sapply(workbook,"[",25,"Vl_Liquidado")
grafico <- data.frame(rbind(Liquidado,Empenhado))
colnames(grafico) <- meses
grafico$group <- rownames(grafico)

ggparcoord(
  data = grafico,
  columns=c(1:(ncol(grafico)-1)),
  scale="globalminmax",
  groupColumn=ncol(grafico)
) + science_theme  + 
    scale_colour_manual(name="", values = c("Empenhado"="#024731", "Liquidado"="#94003C")) + 
     scale_y_continuous(name="Valor (R$)", labels = comma) + xlab("Meses de 2014")