Hadley Wickham escreveu um artigo estelar chamado "Tidy Data" ( link ) no JSS no ano passado sobre manipulação de dados e obtenção dos dados em uma condição "ideal" para realizar a análise. No entanto, eu estava pensando quais seriam as melhores práticas em termos de apresentação de dados tabulares em um ambiente de trabalho? Digamos que seu colega de trabalho solicite que você forneça alguns dados. Quais são algumas regras gerais que você usa ao estruturar esses dados? As diretrizes em "Dados organizados" são igualmente aplicáveis nos casos em que você compartilha dados com profissionais que não são de dados? Obviamente, isso é muito específico ao contexto, mas estou perguntando sobre as "melhores práticas" de alto nível.
12
Respostas:
Como se pode esperar de Hadley, o artigo dele contém uma boa definição de dados organizados e eu concordo com quase tudo no artigo dele e acredito que isso não é válido apenas para "profissionais de dados". No entanto, alguns dos pontos que ele destaca são relativamente fáceis de corrigir (por exemplo, com pacotes que ele criou), se alguns problemas mais fundamentais forem evitados. A maioria desses problemas é resultado do amplo uso do Excel. O Excel é uma ferramenta valiosa e tem seus méritos, mas algumas de suas instalações resultam em problemas para os analistas de dados.
Alguns pontos (das minhas experiências):
Provavelmente existem vários pontos adicionais que não me vieram à mente.
fonte
Em primeiro lugar, geralmente sou eu quem obtém os dados. Portanto, isso pode ser lido como minha lista de desejos.
Meu ponto mais importante é, portanto: fale com quem vai analisar os dados.
Tive uma rápida olhada no artigo: muito do que Hadley escreve poderia ser resumido por "normalizar sua base de dados relacional".
Mas ele também menciona que, dependendo do que realmente está acontecendo, pode ser sensato ter a mesma variável em forma longa ou ampla.
No entanto, existem algumas vantagens práticas na exibição / distribuição não normalizada dos dados:
Pode ser muito mais fácil verificar se os dados estão completos .
As tabelas conectadas, como em um banco de dados relacional normalizado, serão válidas se os dados realmente estiverem em um banco de dados (no sentido do software). Lá, você pode colocar restrições que garantam a integridade. Se os dados forem trocados na forma de várias tabelas, na prática os links serão uma bagunça.
A normalização do banco de dados remove redundâncias. Na vida real do laboratório, as redundâncias são usadas para verificar a integridade.
Portanto, informações redundantes não devem ser removidas muito cedo.
Atualmente, o tamanho da memória / disco parece ser menos problemático. Mas também a quantidade de dados que nossos instrumentos produzem aumenta.
Estou trabalhando com um instrumento que pode produzir facilmente 250 GB de dados de alta qualidade em poucas horas. Esses 250 GB estão em um formato de matriz. Expandir isso para a forma longa explodiria por um fator de pelo menos 4: cada uma das dimensões da matriz (lateral xey, e comprimento de onda λ) se tornará uma coluna, mais uma coluna para a intensidade). Além disso, meu primeiro passo durante a análise de dados seria, normalmente, converter os dados normalizados do formulário longo de volta no formulário espectral.
O trabalho de arrumação abordado por esses pontos de normalização é tedioso e não é um bom trabalho. No entanto, na prática, geralmente passo muito mais tempo em outros aspectos da arrumação
Garantir a integridade e a integridade dos dados na prática é uma grande parte do meu trabalho de arrumar dados.
Os dados não estão em um formato de fácil leitura / alternam entre formatos ligeiramente diferentes:
Recebo muitos dados na forma de muitos arquivos e, geralmente, algumas informações são armazenadas no nome e / ou no caminho do arquivo: o software do instrumento e / ou os formatos de arquivo produzidos não permitem adicionar informações de maneira consistente; portanto, ou possui uma tabela adicional (como em um banco de dados relacional) que vincula as meta informações a um nome de arquivo ou o nome do arquivo codifica informações importantes.
Erros de digitação ou pequenas alterações no padrão dos nomes dos arquivos causam muitos problemas aqui.
fonte