O pacote {nucleos}: analisando a inflação no R

Neste exercício abordamos sobre a teoria e a prática das medidas de núcleos de inflação comumente acompanhadas pelo Banco Central do Brasil (BCB), mostrando a fundamentação por trás dos núcleos de exclusão/estatísticos, suas finalidades e o uso prático do pacote {nucleos} no R para análise de inflação com dados brasileiros. Em suma, vamos entender e construir os:

  • Núcleos de exclusão:
    • IPCA-EX0
    • IPCA-EX1
    • IPCA-EX2
    • IPCA-EX3
  • Núcleos estatísticos:
    • IPCA-MA
    • IPCA-MS
    • IPCA-DP

Conceitos

Índice de Preços ao Consumidor Amplo (IPCA)1 é aquele utilizado pelo Banco Central do Brasil (BCB) para cumprir o determinado no decreto 3.088, de 21 de junho de 1999, que estipulou o regime de metas para inflação no país.

O IPCA é construído de forma hierarquizada, sendo dividido em grupos, subgrupos, itens e subitens. Atualmente são nove os grupos: alimentação e bebidas, habitação, artigos de residência, vestuário, transportes, saúde e cuidados pessoais, despesas pessoais, educação e comunicação.

Todos os meses o IBGE calcula a variação do preço de cada um dos subitens em relação ao mês anterior, bem como verifica o seu peso no índice cheio. O peso de cada um desses componentes no índice cheio é definido de acordo com os gastos das famílias em diferentes bens e serviços. Estes gastos, por sua vez, são captados pela Pesquisa de Orçamento Familiar (POF)2, também do IBGE.

O somatório do produto entre variação mensal e peso de todos os subitens dará a variação mensal do índice cheio, valor que costuma ser noticiado nos jornais para o grande público.

Com o gráfico abaixo, podemos avaliar o que chamamos de inflação cheia, representada pelo comportamento de todos os subitens.

Classificações do IPCA

Para algumas análises, pode ser interessante reunir os subitens e itens do IPCA em determinadas classificações, que não aquelas representadas pelos nove grupos divulgados pelo IBGE.

Por exemplo, dentro do índice existem certos preços que são regulados, isto é, seus reajustes precisam ser autorizados pelo governo. Esses preços, chamados de monitorados ou administrados, seguem uma lógica diferente de preços de mercado, determinados pelo confronto entre oferta e demanda.

A tabela3 a seguir ilustra as diversas classificações construídas pelo próprio Banco Central, assim como suas mudanças nos pesos entre as duas últimas POF.

Dessa forma, vale pontuar que os fatores que influenciam a inflação de serviços não serão os mesmos dos que influenciam a inflação de bens comercializáveis, por exemplo, ainda que ambas classificações respondam a aspectos comuns. De fato, o estado da arte em modelagem e previsão leva em consideração a inflação desagregada e não a inflação cheia justamente por esse motivo.

Utiliza-se as classificações para a construção das medidas de núcleos da inflação.

A seguir o comportamento de algumas das classificações do BCB:

Núcleos de inflação

Como pode ser imaginado, e confirmado, alguns itens do IPCA podem apresentar variações mais infrequentes ou voláteis, de modo que o Banco Central procura capturar e acompanhar a tendência inflacionária ao longo do tempo criando medidas auxiliares: os núcleos do IPCA.

Neste exercício focaremos na análise das sete medidas de núcleos destacadas no início e comumente acompanhadas nos últimos anos pelo BCB e analistas de inflação4. Entretanto, pontua-se que desde julho de 2020 o BCB acompanha apenas cinco medidas de núcleos: EX0, EX3, MS, DP e P55.

Descrição das medidas de núcleos divulgadas pelo BCB (classificação a partir de janeiro/20205):

Historicamente, o comportamento dos núcleos tende a ser menos oscilante em relação ao IPCA:

Conforme visto, os núcleos de exclusão são os mais simples metodologicamente. Já os estatísticos requerem alguns procedimentos e detalhes importantes. Explore em detalhes a metodologia por trás de cada núcleo nos metadados disponíveis no SGS/BCB.

O pacote {nucleos}

Contextualizado a importância e conceituação sobre o tema, nos voltaremos agora para o aspecto prático de como obter os dados e construir os núcleos de inflação usando o R. Para tal, criamos internamente o pacote {nucleos}, que possibilita:

  • Coletar os dados desagregados do IPCA;
  • Tratar e descrever dados do IPCA;
  • Calcular núcleos estatísticos e de exclusão.

No Console do RStudio, instale e carregue o pacote com (chave de token disponível, mediante solicitação, para membros do Clube AM):

Em resumo, o pacote possui as seguintes funcionalidades6:

Além das funções get_ipca() e group_desc() para coletar dados e criar descrições sobre os componentes das tabelas do IPCA, respectivamente.

Uma vez instalado o pacote, vamos demonstrar como utilizá-lo. Primeiro vamos coletar os dados desagregados do IPCA, ou seja, os subitens, itens, subgrupos e grupos do índice:

Com os dados coletados, podemos facilmente calcular qualquer um dos 7 núcleos. Por exemplo, no caso do IPCA-EX0 (e de todos os núcleos de exclusão) usamos a função core_adhoc():

Para os núcleos estatísticos existe uma função dedicada ao cálculo de cada um. Por exemplo, no caso do núcleo de médias aparadas sem suavização basta rodar:

Como pode ser observado, uma vez criado e instalado o pacote, é muito fácil utilizar as funcionalidades para calcular as medidas de núcleos de inflação. Essas facilidades só são possíveis graças ao processo de desenvolvimento do pacote, que pode ser resumido em algumas etapas:

  1. Criar lista com definição de itens e subitens que compõem cada núcleo (classificações do IPCA);
  2. Criar funções para coleta e tratamento de dados;
  3. Criar funções para calcular cada núcleo, utilizando os dados e definições da composição dos mesmos.

Para saber mais detalhes consulte o material extra desse exercício (disponível para membros do Clube AM).

Importante: na próxima atualização da POF/IPCA — sua periodicidade é, em princípio, quinquenal — provavelmente este pacote precisará ser atualizado, para respeitar a entrada/saída de subitens no índice de inflação e suas consequências nas classificações utilizadas nos núcleos.

 

Saiba mais

Se o tema despertou teu interesse, confira os cursos aplicados da Análise Macro e considere ser um membro do Clube AM para acesso completo aos códigos de replicação, outros materiais em R e Python e suporte para dúvidas.

 


1 Consulte informações sobre o IPCA em: https://www.ibge.gov.br/estatisticas/economicas/precos-e-custos/9256-indice-nacional-de-precos-ao-consumidor-amplo.html

2 Para maiores informações, consulte: https://www.ibge.gov.br/estatisticas/sociais/saude/24786-pesquisa-de-orcamentos-familiares-2.html

3Retirada do Estudo Especial nº 69/2019 do BCB: https://www.bcb.gov.br/content/ri/relatorioinflacao/201912/ri201912b7p.pdf

4 Deve-se observar que o conjunto de medidas divulgadas pelo BCB tende a sofrer alterações ao longo do tempo tanto pela inclusão de novas medidas como pela revisão de medidas que eram anteriormente divulgadas.

5 Retirada do Estudo Especial nº 69/2019 do BCB: https://www.bcb.gov.br/content/ri/relatorioinflacao/201912/ri201912b7p.pdf e TD 356 do BCB: https://www.bcb.gov.br/pec/wps/port/TD356.pdf

6 Consulte em detalhes a documentação do pacote em: https://analisemacropro.github.io/nucleos/

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como automatizar o tratamento de dados feito no Excel usando o Python?

Segundo a pesquisa “State of Data Science”, profissionais de dados gastam 3 horas/dia (38% do tempo) apenas preparando os dados, antes mesmo de analisá-los. Neste artigo advogamos que este gasto de tempo pode ser drasticamente reduzido ao utilizar ferramentas open source, como Pandas e Python, para automatizar tarefas repetitivas que costumam ser feitas em Excel.

A gramática dos gráficos: como deixar de criar gráficos no Excel e usar o plotnine no Python

A etapa de visualização de dados refere-se a uma parte fundamental da análise de dados, pois permite não somente compreender os dados que estamos analisando, mas como também é uma ferramenta útil para explanar os resultados encontrados. Mas qual a forma mais fácil de construir um gráfico, como podemos melhorar a produtividade nesta tarefa? É onde podemos aplicar a gramática dos gráficos e construir com a biblioteca plotnine no Python.

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.