Antes de pedir uma análise de CSV à IA, confirme o delimitador, o tratamento de aspas e a codificação do arquivo. Leia os dados com um parser, programa que reconhece a estrutura dos registros, e confira o resultado contra exemplos conhecidos. Dividir cada linha por vírgula pode transformar uma descrição em duas colunas ou separar uma observação em dois registros.
O fluxo recomendado tem quatro etapas: preservar o arquivo original, identificar o formato, validar os campos lidos e só então aplicar tipos e cálculos. A IA pode ajudar a explicar inconsistências e preparar perguntas, mas a aceitação do arquivo precisa de conferências reproduzíveis. Uma tabela visualmente organizada não prova que os dados foram interpretados corretamente.
Resumo rápido
- Não escolha o delimitador apenas contando vírgulas.
- Respeite campos entre aspas e quebras de linha internas.
- Confirme codificação, cabeçalho e quantidade de colunas.
- Separe leitura do formato e conversão de valores.
- Teste registros difíceis antes de calcular totais.
1. Diferencie o formato do arquivo e o significado dos dados
O RFC 4180 documenta uma forma comum de CSV com vírgulas, campos entre aspas e escape de aspas por duplicação. É uma referência informativa, não uma garantia de que todo arquivo chamado CSV segue exatamente essa convenção. Na prática de integração, defina o formato esperado com quem exporta o arquivo.
Um contrato de entrada deve informar delimitador, caractere de aspas, codificação, presença de cabeçalho e nomes das colunas. Depois descreva tipos, campos obrigatórios e convenções de valores. Esses dois grupos resolvem problemas diferentes: saber onde uma coluna termina não informa se um código com zeros iniciais deve virar número.
Considere um arquivo separado por ponto e vírgula, com valores monetários escritos com vírgula decimal. O delimitador organiza as colunas; a vírgula dentro do valor pertence à convenção numérica. Se a equipe tratar as duas coisas como uma única configuração regional, poderá corrigir um problema e criar outro. Primeiro confira as células textuais, depois converta cada coluna conforme seu significado.
Registre também a origem e a versão do exportador. Quando uma nova entrega mudar o cabeçalho ou o modo de escapar aspas, a alteração deve produzir um aviso. Evite uma rotina que aceita qualquer variação silenciosamente. Quanto mais claro o contrato, mais fácil separar um problema de importação de uma diferença real nos dados analisados.
2. Detecte o delimitador sem confiar em uma amostra simples
A documentação oficial do módulo csv do Python oferece leitor, dialetos e o recurso Sniffer para examinar uma amostra. A detecção é uma hipótese de trabalho. Confirme essa hipótese no arquivo e no contrato, especialmente quando descrições contêm pontuação ou as primeiras linhas são diferentes do restante.
Comece abrindo uma cópia em um visualizador de texto, sem salvar alterações. Procure nomes de colunas e registros conhecidos. Teste candidatos plausíveis, como vírgula, ponto e vírgula e tabulação. Para cada candidato, avalie o número de campos lidos, a correspondência do cabeçalho e a presença de conteúdo deslocado. Uma única coluna também pode ser um arquivo válido, portanto a contagem isolada não decide.
Confira registros do início, do meio e do fim. Inclua um caso com descrição longa, outro com campo vazio e outro com pontuação. Se um candidato parecer funcionar apenas nas primeiras linhas, mantenha o arquivo em revisão. Não mude de delimitador a cada registro para forçar a importação: isso pode transformar uma entrada inconsistente em uma tabela sem significado estável.
Quando houver ambiguidade, peça ao responsável uma exportação de teste ou uma descrição do formato. Guarde a configuração aprovada junto ao lote. Essa decisão evita redescobrir o mesmo dialeto em toda execução e permite perceber mudanças futuras. A revisão deve produzir uma regra explícita, não apenas uma captura de tela em que as colunas parecem alinhadas.
3. Preserve aspas, quebras de linha e campos vazios
Compare os registros abaixo com o comportamento do parser antes de trabalhar com o arquivo real. São exemplos didáticos da convenção descrita no RFC, não dados de clientes. Cada caso deve gerar campos previsíveis; se a ferramenta produzir algo diferente, revise o dialeto antes de pedir à IA um resumo das vendas ou dos atendimentos.
| Trecho CSV | Leitura esperada | Erro a evitar |
|---|---|---|
1,"Café, torrado" |
Dois campos; vírgula dentro da descrição | Dividir a descrição em colunas |
2,"Cliente disse ""obrigado""" |
Aspas fazem parte do texto | Apagar ou encerrar o campo antes da hora |
3,,ativo |
Campo intermediário vazio | Deslocar o status para outra coluna |
| Observação entre aspas com quebra interna | Um campo que ocupa mais de uma linha física | Contar cada linha como um registro |
No Python, a documentação recomenda abrir arquivos usados pelo módulo csv com newline=''. Use também uma codificação definida para a entrada. Depois percorra os registros pelo leitor CSV, em vez de chamar uma divisão simples de texto. A quantidade de linhas físicas e a quantidade de registros lógicos podem divergir quando existem quebras dentro de campos entre aspas.
Campo vazio, texto “NULL” e zero não devem ser igualados sem regra de negócio. Preserve o valor original e crie uma coluna tratada quando precisar normalizar. Assim, o revisor consegue saber se uma ausência veio do sistema de origem ou de uma decisão tomada na análise. Para o problema inverso, veja o guia sobre exportação para CSV e fórmulas em planilhas.
4. Valide a tabela antes de envolver a IA
Depois de ler o CSV, compare os nomes das colunas com o esquema esperado. Verifique cabeçalhos repetidos, espaços extras e nomes vazios. Confirme se cada registro tem os campos previstos. Quando houver uma divergência, separe o registro para revisão com referência ao lote e à posição lida, sem descartar o problema para fazer o processamento terminar.
Em seguida, valide os tipos. Identificadores de produto, CEP e códigos de cliente podem exigir preservação textual. Datas precisam de uma convenção explícita; uma interpretação possível não é prova de que ela seja a intenção do exportador. Valores monetários devem ser convertidos segundo a regra aprovada para aquela coluna, mantendo os dados originais para comparação.
A documentação de codecs do Python explica mecanismos de codificação e decodificação, incluindo UTF-8 com assinatura. Se aparecerem caracteres estranhos, investigue a codificação antes de substituir letras ou remover acentos. Uma rotina que ignora erros pode apagar partes de nomes e descrições sem deixar clara a perda.
O modelo de dados tabulares do W3C é uma referência para distinguir estrutura tabular e metadados. Na operação, proponha um relatório com quantidade de registros aceitos, rejeitados e pendentes, além das regras aplicadas. Some essas categorias e confronte com o lote recebido. Não deixe registros desaparecerem entre a leitura e a análise.
Somente depois forneça à IA uma tabela validada ou uma amostra apropriada ao objetivo. Informe o significado das colunas e peça que a resposta diferencie observação de hipótese. Para totais e comparações, faça cálculos reproduzíveis sobre os campos convertidos e confira os resultados. O guia sobre subtotais e dupla contagem em planilhas ajuda a revisar outro erro possível nessa etapa.
Exemplo: distribuidora de alimentos em Recife
Considere um exemplo ilustrativo de uma distribuidora em Recife que recebe pedidos exportados por dois fornecedores. Um entrega CSV com vírgula; outro usa ponto e vírgula. As descrições incluem expressões como “arroz, pacote especial”, e algumas observações de entrega contêm quebra de linha. A equipe quer usar IA para agrupar motivos de devolução, sem alterar o cadastro dos produtos.
Primeiro, a distribuidora cria uma configuração por origem e conserva os arquivos recebidos. Em cada lote, verifica cabeçalho, colunas e codificação. Seleciona uma descrição com vírgula e uma observação longa para comparar a leitura com o sistema de origem. O código do produto continua como texto, mesmo quando contém apenas algarismos, porque sua função é identificar o item.
Depois, a equipe monta uma tabela de trabalho com motivo original e classificação proposta pela IA. Casos ambíguos ficam pendentes de revisão. O total de registros classificados precisa corresponder ao total de registros aceitos pelo parser, descontados apenas os itens excluídos por uma regra documentada. Não se usa a contagem de linhas do editor como substituto da quantidade de pedidos.
Um registro com aspas malformadas não é corrigido por adivinhação. O operador consulta a origem, registra o ajuste autorizado e reprocessa o lote. Na entrega do relatório, a distribuidora informa quais dados ficaram pendentes. O exemplo descreve uma forma de controle, sem representar implantação real nem prometer redução de erros ou ganho de produtividade.
Erros comuns
Trocar todas as vírgulas por ponto e vírgula. Essa substituição também altera descrições e valores. Faça a leitura com o dialeto correto e, se necessário, gere outro arquivo com um gravador CSV. Conserve o original e compare os campos antes e depois.
Abrir e salvar na planilha antes de conferir. Uma ferramenta pode aplicar conversões automáticas. Compare identificadores, datas e valores com a origem antes de aceitar uma cópia como base. Se a tabela tiver estrutura visual complexa, consulte também o guia de células mescladas na preparação para IA.
Ignorar registros que não encaixam. Um processamento que termina sem erro pode ainda ter descartado parte do lote. Registre rejeições e apresente exemplos ao responsável pela exportação. Não inclua no relatório uma conclusão sobre o conjunto inteiro quando parte relevante permaneceu fora da análise.
Pedir à IA para reconstruir campos deslocados. Uma reconstrução plausível não recupera necessariamente o registro original. Use a IA para explicar o problema ou sugerir verificações; para corrigir dados, recorra à fonte e mantenha o vínculo entre o valor recebido e a alteração aprovada.
Perguntas frequentes
CSV sempre usa vírgula como delimitador?
O RFC 4180 descreve a convenção com vírgula, mas arquivos recebidos como CSV podem usar outros separadores. Confirme o contrato de exportação e configure o leitor. A extensão do arquivo, sozinha, não fornece todas as regras necessárias para importá-lo.
Posso detectar o formato contando separadores?
Use a contagem apenas como pista. Separadores podem fazer parte de campos entre aspas. Compare o resultado de um parser com o cabeçalho e com registros conhecidos; se duas configurações parecerem válidas, consulte a origem antes de aprovar uma delas.
Uma quebra de linha indica um novo registro?
Nem sempre. Na convenção citada, campos entre aspas podem conter quebras de linha. A leitura deve reconhecer o fechamento do campo. Por isso, mantenha separadas as métricas de linhas físicas e registros lógicos quando revisar o arquivo.
A IA pode calcular direto no CSV bruto?
Para uma análise confiável, prepare e valide a tabela primeiro. Uma resposta convincente não mostra se o delimitador foi interpretado corretamente. Guarde configuração, regras de conversão e cálculos para que outra pessoa consiga reproduzir os números apresentados.
Como tratar aspas quebradas?
Separe o registro para revisão e confira a exportação original. Não acrescente aspas automaticamente só para eliminar o erro. Quando houver uma correção confirmada, registre o motivo e valide novamente os campos e a contagem do lote inteiro.