Você está na página 1de 13

Limpando bases com o OpenRefine

Por Marco Túlio Pires, da Escola de Dados

O OpenRefine (também conhecido como Google Refine) é um programa bastante poderoso


para limpar grandes bases de dados. Você precisa ​
baixá-lo e executá-lo no seu computador. Ele
funciona no Windows, Mac OSX e Linux, é gratuito e de código livre. Nesse guita, vamos usar a
versão 2.6 beta. Uma vez rodando, você vai precisar acessar o endereço “​
http://localhost:3333​
”. O
OpenRefine funciona no seu navegador como um serviço da Web. Mas não se preocupe, todos os
dados estão seguros nos seu computador. O programa possui diversas funcionalidade e não vamos
conseguir falar de todas nesse guia.

Vamos limpar ​
uma tabela raspada de um ​
PDF do Instituto de Segurança Pública do Rio de
Janeiro usando o ​
PDFtables​
, a mesma que usamos no nosso guia do Google Sheets e Data Wrangler.
A ideia é mostrar como diferentes ferramentas apresentam abordagens diferentes na hora de
limpar uma tabela. Com isso, esperamos que você possa escolher aquela que te atende melhor e de
forma mais conveniente, dependendo do tipo de limpeza que precisa executar.

Importando o arquivo para o OpenRefine


Vamos importar a planilha para o OpenRefine. Clique em “Create Project” no menu lateral e
selecione o botão “Choose Files”. Selecione o arquivo no seu computador e selecione “Next”.
Criando um projeto
Na tela seguinte, dê um nome para o seu projeto e selecione “Create Project”.
Apagando colunas
Vamos apagar as colunas que não vamos precisar nessa tabela. Começamos pela segunda coluna e
faremos a mesma coisa nas colunas “Column2”, “Column7” e “Column8”. Clique na setinha que
acompanha o topo de cada coluna, selecione “Edit column”, “Remove this column”.
Renomeando colunas
Vamos colocar os nomes adequados em cada coluna. A primeira vai se chamar “Crimes”. As
seguintes vão se chamar “Capital”, “Baixada”, “Grande Niteroi” e “Interior”. Clique na setinha no
topo da coluna, selecione “Edit column” e depois “Rename this column”.
Apagando linhas
Vamos apagar as primeiras linhas e as últimas. Clique nas estrelas das linhas que vamos apagar (1-4,
51-52). Para mudar de página clique em “next” no canto superior direito. Depois que tiver
selecionado as estrelas, clique na setinha da coluna “All”, depois em “Facet” e “Facet by star”.
Selecione “True” na caixa que aparecerá na esquerda e, em seguida, clique na setinha da coluna
“All” e escolha “Edit rows”, “Remove all matching rows”.

Feche a caixa da esquerda para exibir as linhas da tabela novamente.

Editando células
Agora vamos acrescentar as categorias. Acrescente um asterisco à frente dos nomes que estão
exibidos em letras maiúsculas na colina “Crimes”. Passe o cursor do mouse sobre a célula que deseja
editar e selecione “edit”. Inclua o asterisco e clique em “Apply”. Faça isso com todos os nomes de
categoria.
Criando colunas baseadas em outras
Clique na setinha da coluna “Crimes” e escolha “Edit columns”, “Add column based on this
column...”. Escreva o nome “Categoria” na primeira caixa de texto para dar o nome à coluna. Na
caixa de texto “Expression”, digite o seguinte código:

if(value[0] == “*”, value.slice(1,300), “”)

Essa expressão avalia o conteúdo das células da coluna “Crimes”. Se a célula começar com um
asterisco, tudo que vem depois dele é copiado para a coluna “Categorias”. Se a célula não começar
com um asterisco, a célula fica em branco na coluna “Categorias”. Selecione “OK”.
Preenchendo valores automaticamente
Na coluna “Categorias”, selecione a setinha e escolha “Edit cells” e, em seguida, “Fill down”. Essa
opção vai preencher a coluna com os nomes das categorias nas células que estão em branco.

Alterando maiúsculas e minúsculas


Agora vamos padronizar as letras maiúsculas e minúsculas na coluna “Categorias”. Escolha “Edit
cells”, “Common transforms” e “To titlecase”.
Filtrando linhas
Vamos apagar as linhas da coluna “Crimes” que começam com um asterisco. Clique em “Text filter”
e digite um asterisco na caixa de texto que aparece à esquerda. Apague todas as linhas selecionando
a coluna “All”, “Edit cells”, “Remove all matching rows”.
Apagando valores das células
Vamos apagar os “-” que aparecem nessa tabela. Na coluna “Capital” escolha “Edit cells”,
“Transform”.
Na caixa de texto digite a seguinte expressão:

if(value == “-”, “”, value)

Ou seja, se o valor da coluna for “-”, ele será apagado, caso contrário, o valor é mantido. Selecione
“OK” e faça o mesmo com as outras colunas. Se a sua expressão der erro, apague as aspas e digite-as
novamente.
Exportando a tabela limpa
Agora é só exportar a tabela para um dos muitos formatos compatíveis com o OpenRefine. O nosso
favorito é o CSV (Comma Separated Values). Basta clicar em “Export” e escolher um formato.

Você também pode gostar