Iniciei um projeto (Github) que visa disponibilizar de maneira mais acessível os dados do sistema elétrico que podem ser encontrados no site do ONS (Operador Nacional do Sistema Elétrico). A idéia de criar este repositório surgiu um bom tempo depois de responder esta pergunta no Stack Overflow PT.

Os dados podem ser encontrados na seção histórico da operação do site.

Por que disponibilizá-los de maneira mais acessível?

Para fazer análises estatísticas de dados precisamos de uma base de dados. Da maneira com que os dados estão disponíveis no site, é necessário que o analista faça cada consulta selecionando os parâmetros e copiando a tabela para algum outro arquivo. Desse modo a chance de algum erro ocorrer é muito grande e também fere o princípio de reproducibilidade científica.

Como os dados estão organizados?

O repositório está organizado em pastas, uma para cada seção do “histórico da operação” do portal do ONS.

Até agora as seções geração de energia, carga de energia e carga de demanda já estão disponíveis no Github.

A pasta de cada um dos bancos de dados está organizada da seguinte maneira:

  • R/: contém o código em R utilizado para fazer o download e processamento dos dados, bem como um script que pode ser utilizado para a atualização do banco de dados.
  • data-raw/: contém todos os arquivos .html que foram baixados do portal do ONS. Esses arquivos são o formato mais “puro” dos dados.
  • data/: contém os banco de dados. O base_arquivos.csv que é utilizado para controlar os arquivos que já foram baixados e que já estão processados. E a base.csv que contém todos os dados da seção compilados.

Leitura dos arquivos no R

O link direto pode ser utilizado para a leitura dos dados no R. Abaixo seguem as funções para ler os três arquivos já disponíveis no repositório.

  • Geração de Energia: read.csv("https://raw.githubusercontent.com/dfalbel/ons/master/geracao-energia/data/base.csv")
  • Carga de Demanda: read.csv("https://raw.githubusercontent.com/dfalbel/ons/master/carga-de-demanda/data/base.csv")
  • Carga de Energia: read.csv("https://raw.githubusercontent.com/dfalbel/ons/master/carga-de-demanda/data/base.csv")

Espero que a disponibilização neste formato seja uma ajuda para quem está procurando analisar estes dados.