Tag

deflacionar valor monetário Archives - Análise Macro

Deflacionando dados no Python

By | Data Science

Algumas pessoas ainda devem se lembrar de quando era possível "fazer o rancho", as compras do mês, com apenas cem reais no bolso, mas já faz bastante tempo que uma simples ida ao supermercado é deveras custosa. O carro popular que podia ser adquirido por menos de R$ 30 mil nos anos 1990 é facilmente vendido por não menos de R$ 50 mil hoje. Ou seja, com uma nota de R$ 100 não se compra a mesma quantidade de bens hoje do que era possível há 20 anos e isso constitui um problema econômico básico, motivo pelo qual devemos deflacionar valores monetários para poder compará-los no tempo.

Sendo assim, se queremos ter uma visão realística quando analisando uma série de preços, devemos transformar os valores nominais para valores deflacionados, ou reais, contabilizando o efeito inflacionário do período. Apesar de ser um procedimento padrão, costumam haver alguns equívocos, de modo que iremos esclarecer alguns pontos e explorar o procedimento usando a linguagem Python.

Conceitos

Para transformar uma série de preços para valores reais, são necessárias duas coisas:

  • Os dados nominais e;
  • Um índice de preços adequado.

A série de dados nominais pode ser qualquer uma que mede algo em valores correntes (R$), como por exemplo a série do salário mínimo, disponibilizada pelo IPEADATA.

Já o índice de preços adequado pode vir de diversas fontes, os mais conhecidos no Brasil são o Índice Nacional de Preços ao Consumidor Amplo (IPCA), o Índice Nacional de Preços ao Consumidor (INPC) e o Índice Geral de Preços - Mercado (IGP-M), este divulgado pela FGV e aqueles pelo IBGE. O que esses índices fazem é medir o preço de uma cesta de produtos em um dado período de tempo, geralmente um mês cheio, em relação a um outro período de tempo base.

Com esses dois dados, basta aplicar a fórmula de deflacionamento a seguir:

onde:
Vri:j é o valor real, ou deflacionado, no período i na data-base j
Ij é o índice de preços fixado na data-base j
Ii é o índice de preços no período i
Vi é o valor ou preço nominal no período

Com esta fórmula é possível obter o valor deflacionado a partir da multiplicação do valor nominal em um dado período pela razão entre o índice de preços na data-base de referência em relação ao índice no período de análise/interesse. Agora vamos exemplificar com dados para facilitar o entendimento.

Exemplo

Como exemplo, deflacionaremos a série do salário mínimo nominal do Brasil com o INPC, utilizando uma amostra de 2000 até 2021. As fontes dos dados são o IPEADATA e o IBGE, respectivamente.

Por conveniência, disponibilizo um arquivo CSV com estes dados e uso um link para importá-los, conforme abaixo (você pode replicar o código em um ambiente de programação Python como, por exemplo, o Google Colab):

Por exemplo:

Se quiséssemos saber o salário mínimo real de agosto de 2021 na data-base de dezembro de 2021, ou seja, o salário em 08/2021 a preços de 12/2021, a expressão seria

Simples, não? Dessa forma podemos comparar os valores no tempo levando em conta o efeito da inflação no período. O equivalente desse cálculo aritmético em Python é:

Agora que entendemos o procedimento passo a passo do cálculo de deflacionamento, vamos generalizar aplicando a fórmula na série completa do salário mínimo. Para tal vou criar um nova coluna na tabela de dados e utilizar a expressão iloc[-1] para fixar o INPC do último mês da amostra (dezembro/2021) como data-base no cálculo:

Observe que no mês fixado como data-base o valor deflacionado e o valor nominal são, por construção, iguais.

Finalizo plotando abaixo uma comparação gráfica das duas séries:

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais
e conteúdos exclusivos sobre Análise de Dados!

Assinar Gratuitamente