29 de outubro de 2014

Edição de texto: Transformar listas em tabelas

Como transformar textos lineares, digitados em formato de "ficha", em tabelas, com a ajuda de um editor de texto e fazendo buscas e substituições. Aqui foi usado o editor de texto gratuito para mac TextWrangler e o Open Refine. O TextWrangler tem suporte a buscas e substituições mais avançadas (expressões regulares, ou GREP). Uma opção para windows é o Notepad++, mas até o Word quebra alguns galhos.

Porque a tabela?

Uma tabela é muito mais útil para trabalhar com muitas ocorrências de estrutura semelhante, comparáveis e estruturadas. Com a tabela as informações podem ser filtradas, reordenadas, calculadas, visualizadas, etc., coisas que não poderiam ser feitas com o texto puro.


Link direto do vídeo: http://youtu.be/SOBvEj7KQl4

Transformar listas em tabelas

Aqui vai uma descrição rápida do processo que eu fiz enquanto limpava esse texto e gravava o vídeo:
1. Conferir/identificar padrões
2. Usar um editor de texto mais poderoso (com suporte a expressões regulares "GREP")
3. Identificar número de ocorrências, e se os mesmos itens estão em todas as ocorrências
4. Organizar anotações:
- número de campos
- ordem
- como vai ficar a tabela
- número de tabs pra organizar as colunas
5. Começar a limpar o texto.
- eliminar os campos e jogar o número de tabs correspondentes à posição de cada campo
6. Fill Down com o Google/Open Refine
- adicionar cabeçalho
- identificar caractere separador dos campos: tab (formato TSV)
- garantir que ele esteja lendo a primeira linha como cabeçalho (se você já pos o cabeçalho.)
- criar projeto
- fazer o Fill Down em todas as colunas até chegar na última, sem fazer na última. Opções da coluna > Edit Cells > Fill Down.
- o Fill Down preenche as células vazias com duplicando o conteúdo até encontrar a próxima célula preenchida, e assim por diante.
- o objetivo é fazer com que a última linha da sequência esteja com todos os campos preenchidos. 
- assim que a última linha da sequência estiver inteira preenchida (feito o Fill Down em todas as colunas necessárias), pode-se apagar as outras linhas temporárias.
- é possível fazer isso identificando as linhas que tem o último campo vazio.
- Opções da coluna > Facet > Customized Facet > Facet by Blank. O facet identifica e indexa todo o conteúdo que tem naquela coluna. A partir do index que ele faz, você pode filtrar a tabela, clicando no item que você quer mostrar. O facet que escolhemos (Facet by Blank) identifica as linhas vazias e preenchidas. Então ao clicar em true, só as linhas vazias (naquela coluna) vão aparecer. E clicando em false, só as linhas preenchidas vão aparecer.
- Apagar linhas vazias: Selecionar "true" > Opções da coluna "All" > Edit Rows > Remove all matching rows.
- agora todas as linhas estão preenchidas. Exportar > Escolher um formato 
7. Puxar pro Excel.
8. Feito.

Um outro exemplo:

Link direto do vídeo: http://youtu.be/yxrkg9xFxyo

--
Using GREP or RegEx (regular expressions) to transform textual lists into tables / spreadsheets. TextWrangler (mac) and Open Refine and Microsoft Excel helped to do the trick.