Como estimar o índice de Gini no R

O índice de Gini é uma medida de distribuição de renda muito interessante e conhecida, que tenta expressar em um valor único a desigualdade apresentada na curva de Lorenz. Neste exercício mostramos como podemos estimar essa medida facilmente no R.

O índice de Gini consiste em um número entre 0 e 1, onde 0 corresponde à completa igualdade e 1 corresponde à completa desigualdade e pode ser calculado com a fórmula de Brown abaixo:

Onde:

G = coeficiente de Gini
X = proporção acumulada da variável "população"
Y = proporção acumulada da variável "renda"

Para esse exercício usaremos os microdados da PNAD Contínua trimestral do IBGE, que possui a variável Rendimento mensal efetivo de todos os trabalhos (VD4020). E para tornar o exercício interessante faremos a estimação do índice de Gini por estado (UF) brasileiro.

Pacotes

Para a finalidade do exercício utilizaremos os seguintes pacotes do R, todos disponibilizados no CRAN:


# Instalar/carregar pacotes
if(!require("pacman")) install.packages("pacman")
pacman::p_load(
"PNADcIBGE",
"survey",
"convey",
"tidyverse"
)

Dados

O último trimestre da pesquisa disponível na data deste exercício é referente ao 1º trimestre de 2021. Apontamos esse período na função get_pnadc(), especificamos as variáveis desejadas para coleta e convertemos o objeto resultante para a classe convey para poder fazer a estimação:


pnadc_0121 <- PNADcIBGE::get_pnadc(year = 2021, quarter = 1, vars = c("UF", "VD4020")) %>%
convey::convey_prep()

Estimar índice de Gini

Para estimar o índice de Gini o pacote convey oferece a função svygini, bastando especificar a variável de renda desejada. Como queremos a estimação por estado, usaremos também a função svyby do pacote survey, que serve justamente para calcularmos estatísticas por grupos dos nossos dados, nesse caso a UF.


gini_uf <- survey::svyby(
~VD4020,
by = ~UF,
design = pnadc_0121,
FUN = convey::svygini,
na.rm = TRUE
)

Visualizar os resultados

Por fim, vamos fazer um gráfico simples para visualizar o resultado da estimação, usando o ggplot2:


gini_uf %>%
dplyr::as_tibble() %>%
dplyr::mutate(UF = forcats::fct_reorder(UF, VD4020)) %>%
ggplot2::ggplot(ggplot2::aes(x = VD4020, y = UF)) +
ggplot2::geom_col(fill = "darkblue") +
ggplot2::theme_classic() +
ggplot2::labs(
title = "Índice de Gini por Estado",
subtitle = "Dados do 1º trimestre de 2021",
x = NULL,
y = NULL,
caption = "Fonte: Microdados PNADC-T/IBGE"
)

O que você achou do resultado? Surpreendente? Deixe suas impressões!

Quer aprender mais sobre utilização de microdados? Inscreva-se no curso de R e Python para Economistas.

 

________________________

(*) Para entender mais sobre micro dados e desigualdade, confira nosso Cursos de Micro Aplicada.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Criando operações SQL com IA Generativa no R com querychat

No universo da análise de dados, a velocidade para obter respostas é um diferencial competitivo. Frequentemente, uma simples pergunta de negócio — “Qual foi nosso produto mais vendido no último trimestre na região Nordeste?” — inicia um processo que envolve abrir o RStudio, escrever código dplyr ou SQL, executar e, finalmente, obter a resposta. E se pudéssemos simplesmente perguntar isso aos nossos dados em português, diretamente no nosso dashboard Shiny?

Dashboard Financeiro com IA e Shiny Python: Análise de Dados Abertos da CVM

Este artigo apresenta um tutorial completo sobre como construir uma ferramenta de análise financeira de ponta. Utilizando Shiny for Python, demonstramos a automação da coleta de dados das Demonstrações Financeiras Padronizadas (DFP) da CVM e o tratamento dessas informações com Pandas. O ponto alto do projeto é a integração da IA Generativa do Google Gemini, que atua como um assistente de análise, interpretando os dados filtrados pelo usuário e fornecendo insights contábeis e financeiros em tempo real. O resultado é um dashboard dinâmico que democratiza a análise de dados complexos e acelera a tomada de decisão.

Econometria, ML ou IA para previsão da PMS?

Prever a Pesquisa Mensal de Serviços (PMS/IBGE) é um desafio por natureza: trata-se de uma série mensal, sujeita a volatilidade e choques que vão de fatores sazonais a mudanças estruturais no setor. Para enfrentar esse problema, realizamos um exercício de comparação entre três abordagens de modelagem: econometria tradicional (ARIMA), machine learning (XGBoost) e inteligência artificial (TimeGPT).

Boletim AM

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

Boletim AM

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

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.