DBnomics: 1 bilhão de dados econômicos no Python

Analisar dados econômicos não é fácil. Muitas vezes os dados estão dispersos em bases nacionais e internacionais (BCB, IBGE, IPEA, FRED, OCDE, FMI, etc.) e o analista precisa acessar individualmente cada instituição para procurar as variáveis de interesse. Não para por aí, ainda é necessário coletar os dados e muitas vezes não existe uma API ou a documentação não ajuda muito. No final do dia, o analista acaba tendo que escrever 50 linhas de código só para coletar e tratar os dados de 2 ou 3 fontes.

Agora imagine que este analista tivesse à disposição uma única API com dados econômicos nacionais e internacionais de cerca de 100 instituições estatísticas e empresas privadas diferentes, com atualização em tempo quase real e totalizando mais de 1 bilhão de séries acessíveis por uma única linha de código no Python. Parece um sonho, não? Não, não é um sonho, é a plataforma DBnomics!

A DBnomics é uma plataforma gratuita que reúne dados econômicos publicamente disponíveis, fornecidos por instituições, pesquisadores e empresas ao redor do mundo. A API fornecida pela plataforma simplifica o acesso aos dados, que são atualizados regularmente e disponibilizados em um formato padronizado e pronto para análise. Em suma, a DBnomics é, provavelmente, uma das maiores bases de dados econômicos do mundo.

Quais dados estão disponíveis na DBnomics?

A plataforma DBnomics disponibiliza séries temporais, de frequência no mínimo diária, cobrindo uma variedade de tópicos:

  • Economia
  • População
  • Condições de vida
  • Ambiente
  • Energia
  • Agricultura
  • Finanças
  • Comércio
  • Etc.

No total, estão disponíveis dados de 91 fontes, distribuídos em 34 mil conjuntos de dados e 1,2 bilhão de séries temporais. Algumas das principais fontes incluem:

  • BCB
  • BIS
  • ECB
  • Eurostat
  • IMF
  • OECD
  • WTO
  • WB

Como usar a API da DBnomics para coletar dados no Python?

Para coletar dados econômicos pela API da DBnomics, o usuário pode utilizar a biblioteca dbnomics no Python:

  1. Acessar https://db.nomics.world/, escolher fonte/dataset e filtrar os dados de interesse
  2. Na página dos dados filtrados, clicar em Download e copiar link JSON
  3. Coletar os dados pela biblioteca dbnomics no Python usando a função fetch_series_by_api_link():

Para obter o código e o tutorial deste exercício faça parte do Clube AM e receba toda semana os códigos em R/Python, vídeos, tutoriais e suporte completo para dúvidas.

  @frequency provider_code   dataset_code  \
0    monthly      Eurostat  prc_hicp_manr   
1    monthly      Eurostat  prc_hicp_manr   
2    monthly      Eurostat  prc_hicp_manr   
3    monthly      Eurostat  prc_hicp_manr   
4    monthly      Eurostat  prc_hicp_manr   

                                  dataset_name              series_code  \
0  HICP - monthly data (annual rate of change)  M.RCH_A.CP011.EU27_2020   
1  HICP - monthly data (annual rate of change)  M.RCH_A.CP011.EU27_2020   
2  HICP - monthly data (annual rate of change)  M.RCH_A.CP011.EU27_2020   
3  HICP - monthly data (annual rate of change)  M.RCH_A.CP011.EU27_2020   
4  HICP - monthly data (annual rate of change)  M.RCH_A.CP011.EU27_2020   

                                         series_name original_period  \
0  Monthly – Annual rate of change – Food – Europ...         2001-12   
1  Monthly – Annual rate of change – Food – Europ...         2002-01   
2  Monthly – Annual rate of change – Food – Europ...         2002-02   
3  Monthly – Annual rate of change – Food – Europ...         2002-03   
4  Monthly – Annual rate of change – Food – Europ...         2002-04   

      period  original_value  value freq   unit coicop        geo  \
0 2001-12-01             6.3    6.3    M  RCH_A  CP011  EU27_2020   
1 2002-01-01             7.2    7.2    M  RCH_A  CP011  EU27_2020   
2 2002-02-01             6.4    6.4    M  RCH_A  CP011  EU27_2020   
3 2002-03-01             5.5    5.5    M  RCH_A  CP011  EU27_2020   
4 2002-04-01             4.6    4.6    M  RCH_A  CP011  EU27_2020   

  Time frequency        Unit of measure  \
0        Monthly  Annual rate of change   
1        Monthly  Annual rate of change   
2        Monthly  Annual rate of change   
3        Monthly  Annual rate of change   
4        Monthly  Annual rate of change   

  Classification of individual consumption by purpose (COICOP)  \
0                                               Food             
1                                               Food             
2                                               Food             
3                                               Food             
4                                               Food             

             Geopolitical entity (reporting)  
0  European Union - 27 countries (from 2020)  
1  European Union - 27 countries (from 2020)  
2  European Union - 27 countries (from 2020)  
3  European Union - 27 countries (from 2020)  
4  European Union - 27 countries (from 2020)  

Dessa forma simples os dados já estão disponíveis para serem analisados!

No nosso exemplo coletamos dados da taxa de inflação de itens selecionados da cesta de produtos/serviços considerada pela Eurostat na União Europeia. Sendo assim, usando estes dados podemos verificar que o preço do chocolate vem crescendo substancialmente em relação a outros alimentos:

Interessante, não? Aprenda a coletar, processar e analisar dados econômicos na formação Do Zero à Análise de Dados Econômicos e Financeiros com Python.

Conclusão

Neste exercício mostramos como usar a API de dados da DBnomics, que disponibiliza dados econômicos do Brasil e do mundo de ~100 fontes diferentes. Além de ser gratuita, a API é acessível diretamente do Python e é atualizada em tempo quase real.

Notas de rodapé

  1. Saiba mais em https://db.nomics.world/about↩︎

Quer aprender mais?

Clique aqui para fazer seu cadastro no Boletim AM e baixar o código que produziu este exercício, além de receber novos exercícios com exemplos reais de análise de dados envolvendo as áreas de Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas diretamente em seu e-mail.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Criando um Dashboard de análise de Ações no Python

Um Dashboard é um painel de controle que consolida uma variedade de informações sobre um determinado objeto de estudo em um ou mais painéis. Ele simplifica significativamente o processo de análise de dados, oferecendo uma visão global e fácil de entender. Uma maneira simples de construir um Dashboard para acompanhar uma ação específica é utilizando duas ferramentas: Quarto e Python. Neste post, mostramos o resultado da criação de um Dashboard de Ação.

Analisando séries temporais no Python e esquecendo de vez o Excel

Séries temporais representam uma disciplina extremamente importante em diversas áreas, principalmente na economia e na ciência de dados. Mas, afinal, como lidar com esses dados que se apresentam ao longo do tempo? Neste exercício, demonstraremos como compreender uma série temporal e como o Python se destaca como uma das melhores ferramentas para analisar esse tipo de dado.

Cálculo do Retorno Econômico de uma Política Pública

Como podemos traduzir os efeitos de uma política pública para valores monetários? Essa é uma tarefa árdua que requer algumas premissas, entretanto, com métodos bem definidos, é possível obter estimativas precisas dos ganhos e os gastos de uma política pública.

Neste exercício, demonstramos tal método usando a política hipotética "Mãe Paranense”, um conjunto de ações que visam reduzir a mortalidade materna e infantil no estado. Usamos a linguagem R como ferramenta para analisar os 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.