Eu tenho dois arquivos CSV, um com dados ligeiramente alterados. Como posso identificar facilmente alterações?

1

Todo mês, recebo um arquivo CSV de nossa base de clientes - e-mail, cargo, número de telefone, etc. Preciso identificar alterações entre as duas planilhas, incluindo alterações em dados existentes e identificação de novas pessoas adicionadas.

Quero comparar a nova planilha com a antiga, destacar as alterações e prosseguir a partir dela. O endereço de e-mail é o item de linha mais constante, que costumamos usar para encontrar pessoas. As duas planilhas sempre terão as mesmas colunas, mas as filas podem estar fora de ordem, dificultando uma comparação automatizada lado-a-lado. É possível usar o endereço de e-mail como ponto de partida e, em seguida, trabalhar ao longo dos dados de destaque da linha que diferem?

Eu sei que o VLOOKUP pode ser usado, mas com certeza isso significaria varrer manualmente os dados obtidos para ver se é o mesmo em ambas as planilhas. Talvez eu esteja sentindo falta de algo aqui! Todas as soluções de software que encontrei comparam os dois linha por linha, o que significa que corre mal no segundo em que uma nova pessoa é adicionada / removida e as folhas ficam fora de sincronia.

Qualquer ajuda seria apreciada.

    
por Hannah 29.01.2013 / 12:41

3 respostas

1

Você precisará classificá-los para usar a maioria das ferramentas de diferenças. Tente carregá-los no Excel, classificá-los por endereço de e-mail, exportá-los novamente como CSV e usar o WinMerge para compará-los.

    
por 29.01.2013 / 13:30
1

Se o conteúdo pode mudar e as linhas podem acabar fora de ordem, você precisa de uma maneira de colocá-las em uma ordem determinada. Parece que você pode usar o endereço de e-mail para corresponder registros entre os arquivos, certo? Classifique cada arquivo CSV pela coluna de e-mail (ou qualquer outro campo que possa servir como "chave" para seus dados) e compare-os usando uma ferramenta de comparação ou o que for.

Como fazer tudo isso depende das ferramentas que você tem na sua caixa de ferramentas. Eu usaria python e o módulo csv , mas tenho certeza de que sua linguagem de script favorita está à altura da tarefa.

    
por 30.01.2013 / 01:40
1
  1. Faça cópias de seus dois arquivos csv.
  2. Renomeie as extensões das duas cópias dos arquivos csv que você acabou de criar, substituindo a extensão ".csv" por ".txt".
  3. Instale o WinMerge e abra os dois novos arquivos ".txt" que você acabou de criar no WinMerge. Agora você pode ver todas as diferenças entre os dois arquivos csv graficamente no WinMerge.

Este link mostra como as diferenças entre os dois arquivos aparecem no WinMerge.

    
por 29.01.2013 / 13:28