Português (Brasil)

Dados e planilhas · CSV Limpador

Valores separados por tabulação versus CSV: Por que TSV existe e quando usá-lo

· Fundo

csv tv formatos de dados

Versões delimitadas por vírgulas e tabulações de uma tabela de texto livre seguindo caminhos de analisador separados
Ilustração vetorial original ToolAcre

As guias raramente aparecem dentro dos dados, e é exatamente por isso que TSV existe. Esta postagem explica as origens dos arquivos separados por tabulações, como eles evitam os problemas de cotação de CSV e onde ainda ficam aquém.

Texto livre cheio de vírgulas e aspas que continua quebrando as exportações CSV — o caso que tornou as guias atraentes

As notas de texto livre geralmente contêm vírgulas, portanto, a saída delimitada por vírgulas precisa de aspas em torno dessas células. Uma guia pode ocorrer com menos frequência nesse conjunto de dados específico, o que pode tornar um arquivo TSV visualmente mais silencioso. Isso não elimina a necessidade de um analisador ou de um acordo sobre guias e novas linhas incorporadas.

ToolAcre trata tabulação como um dos quatro separadores. A mesma máquina de estado de campo entre aspas é executada independentemente de qual separador está selecionado. Isto significa que a decisão muda um caráter estrutural, e não o modelo de segurança para cada valor estranho.

De onde vem TSV - as origens da máquina de escrever do caractere de tabulação e seu uso inicial em dumps de banco de dados e dados científicos

A pasta de trabalho solicita um histórico de máquinas de escrever para dumps de banco de dados, mas essas declarações não estão presentes na configuração, implementação ou testes do produto. Este módulo omite essa cronologia e concentra-se no comportamento que os leitores podem reproduzir com o analisador enviado.

Uma tabulação no texto fonte é simplesmente ` ` para a máquina de estado quando selecionada como delimitador. Fora das aspas termina um campo; entre aspas, ele permanece parte do campo. Essa regra é suficiente para comparar formatos sem inventar uma história de origem.

As origens da máquina de escrever e o histórico inicial do banco de dados estão fora das evidências do repositório

TSV pode reduzir as aspas quando os valores contêm vírgulas, mas não contêm tabulações, aspas ou finais de registro. O esboço dizia que a maioria dos dialetos TSV não precisa de citação alguma; O serializador de ToolAcre é mais preciso. Ele cita qualquer campo que contenha o delimitador selecionado, uma aspa, LF, CR ou espaço em branco ao redor.

Uma nota contendo uma tabulação real deve, portanto, ser colocada entre aspas na saída da tabulação, e uma aspa literal é duplicada dentro desse campo. O texto livre também pode conter quebras de linha, que permanecem entre aspas. A escolha de um delimitador incomum reduz as colisões em um conjunto de dados; nunca faz com que as regras de colisão desapareçam.

ToolAcre ainda aplica aspas no estilo RFC quando dados delimitados por tabulações contêm tabulações, aspas ou novas linhas

As guias são visualmente ambíguas porque os editores podem renderizá-las como espaços de largura variável. Copiar por meio de software que converte tabulações em espaços pode destruir o separador e deixar o arquivo legível para uma pessoa. Inspecione caracteres invisíveis ou confie em uma visualização do analisador antes de declarar um resultado de uma coluna malformado.

ToolAcre grava a guia detectada de volta em uma seleção rotulada e mostra a contagem de colunas, tornando a escolha invisível visível. Se o arquivo for realmente um texto alinhado ao espaço em vez de TSV, a detecção de tabulação não criará colunas. A seleção manual não pode fabricar separadores ausentes.

Convenções de escape — sequências de barras invertidas em alguns dialetos TSV versus citações no estilo RFC em CSV

Alguns dialetos tabulares usam sequências de barras invertidas para tabulações ou novas linhas. ToolAcre não. Seu analisador reconhece aspas duplas no estilo RFC e campos entre aspas em cada delimitador selecionado. Uma barra invertida é um texto de célula comum e não escapa do próximo caractere.

Essa incompatibilidade pode deixar barras perdidas ou limites prematuros ao carregar uma exportação configurada para um dialeto diferente. Identifique primeiro as regras de fuga do produtor. A conversão segura requer a análise do dialeto original, não a substituição de pares de barras e letras sem saber se eles eram literais.

Os dialetos de barra invertida TSV não são suportados; ToolAcre usa aspas duplas para cada delimitador selecionado

Pegue os cabeçalhos id, note e dois valores: uma nota diz `red, small`, enquanto outra contém uma guia real. Na saída de vírgula, a primeira nota é colocada entre aspas e a tabulação pode permanecer sem aspas porque não é o delimitador. Na saída da tabulação, a vírgula é comum, mas o valor da tabulação é citado.

Analise cada saída com seu delimitador correspondente e ambas as tabelas recuperam as mesmas strings. Este exercício mostra que nenhum dos formatos evita universalmente o tratamento especial. O separador escolhido apenas altera qual caractere aciona aspas, além das aspas e dos finais dos registros.

O que isso não cobre — formatos de largura fixa e formatos tabulares binários

Os formatos tabulares binários e de largura fixa estão fora da rota. Ele não infere colunas a partir do alinhamento visual nem decodifica um contêiner colunar. As entradas devem ser textuais CSV, TSV ou texto simples usando vírgula, ponto e vírgula, tabulação ou barra vertical, ou com suporte JSON na direção inversa.

A rota também não oferece nenhum caractere de escape personalizado. Se um fluxo de trabalho científico ou de banco de dados definir sua própria gramática TSV, use um analisador configurado para essa gramática antes de trazer o texto normalizado aqui. Uma extensão não é evidência suficiente de compatibilidade dialetal.

Escolha o delimitador para os dados e o consumidor — como o reparo do delimitador do ToolAcre CSV Cleaner produz um arquivo delimitado de forma consistente para o sistema que você está alimentando

Escolha um delimitador de acordo com os dados e o consumidor e indique-o explicitamente. ToolAcre pode detectar tabulação e vírgula de uma amostra retangular de dez linhas ou aceitar uma substituição manual. Ele não examina o conteúdo semântico e decide que as notas merecem tabulações.

Após a análise, resolva os avisos de linha e serialize com o mesmo ou outro separador compatível. O tratamento padrão de aspas duplas protege colisões. O resultado é consistente porque o delimitador é conhecido, não porque TSV ou CSV seja inerentemente imune à pontuação nos dados.