Realiza a extração automatizada e em lote dos dados do Relatório Resumido de Execução Orçamentária (RREO) Diretamente da API do SICONFI (Tesouro Nacional). A função resolve nativamente grades paramétricas complexas (produto cartesiano), otimiza o consumo de memória RAM e processa de forma determinística as colunas temporais móveis (como os últimos 12 meses do Anexo 03).
Usage
RREOdata(
cod.ibge = NULL,
year = NULL,
period = NULL,
annex = NULL,
simplified = FALSE,
save_path = NULL
)Arguments
- cod.ibge
Vetor numérico ou caractere contendo os códigos IBGE dos entes federativos. Aceita códigos de 1 dígito (União), 2 dígitos (Estados) ou 7 dígitos (Municípios). Pode receber os atalhos estendidos
"all_states"para extrair todas as Unidades da Federação de forma combinada ou"all_muni"para todos os municípios brasileiros.- year
Vetor numérico contendo os anos/exercícios desejados para a análise (ex:
2022:2024).- period
Vetor numérico contendo os bimestres de referência do relatório dentro de um exercício. Valores típicos disponíveis:
1a6. Casosimplified = TRUE, a periodicidade passa a ser semestral, aceitando os valores1ou2.- annex
Vetor numérico mapeando os anexos dos demonstrativos do RREO a serem baixados (valores aceitos de
1a14conforme disponibilidade na API do SICONFI).- simplified
Lógico. Define se a consulta deve buscar a versão do RREO Simplificado. Esta opção aplica-se estritamente a municípios com menos de 50 mil habitantes que optaram formalmente pela publicação semestral dos seus relatórios fiscais. Padrão é
FALSE.- save_path
Caminho de arquivo opcional em disco (caractere) para persistência imediata dos dados consolidados. Se a extensão informada for
.parquet, o pacote exige a instalação do pacotearrow. Também aceita extensões.rdse.csv. Se omitido (NULL), os dados são retornados diretamente para a sessão do R.
Value
Um objeto data.frame (ou um objeto invisível caso save_path seja acionado) contendo
as colunas padronizadas da API do SICONFI empilhadas verticalmente de forma limpa, com as
colunas do tipo <MR-X> devidamente traduzidas para o formato de data real mes/ano.
Examples
if (FALSE) { # \dontrun{
# 1. Extração básica: Anexo 01 do Estado de Goiás (IBGE 52) para o 6º Bimestre de 2023
dados_goias <- RREOdata(
cod.ibge = 52,
year = 2023,
period = 6,
annex = 1
)
# 2. Extração combinada multivariada (Gera produto cartesiano interno)
# Baixa dados de Goiânia (5208707) e Aparecida (5201405), anos 2022 e 2023, bimestres 1 e 6
dados_multi <- RREOdata(
cod.ibge = c(5208707, 5201405),
year = 2022:2023,
period = c(1, 6),
annex = 3
)
# 3. Pipeline de Data Lake: Baixando dados em lote e salvando direto em Parquet
# Nota: Requer que o pacote 'arrow' esteja instalado no ambiente.
RREOdata(
cod.ibge = "all_states",
year = 2024,
period = 1:6,
annex = 1,
save_path = "data/storage/rreo_estados_2024.parquet"
)
# 4. Fluxo de leitura local após salvar (Lazy Loading)
# gc() # Chama o garbage collector para limpar a RAM
# tab.parquet <- arrow::open_dataset("data/storage/rreo_estados_2024.parquet")
# tab.parquet |>
# filter(cod_ibge == "52") |>
# collect()
} # }
