- Ferramenta baseada em Rust para processar arquivos CSV grandes no terminal de forma rápida e eficiente
- Além de vários recursos de manipulação de dados, também oferece suporte a exibição, visualização, análise, web scraping, processamento de texto e análise de redes
- Internamente, usa multithreading, linguagem de expressões e processamento paralelo para alto desempenho
- Consegue lidar sem problemas com arquivos CSV gigantes (na faixa de gigabytes)
- Fornece uma linguagem de expressões dedicada muito mais rápida que Python ou Lua
- Permite implementar fluxos de dados complexos com encadeamento de comandos únicos
- Vai de estatísticas simples até visualizações básicas como heatmaps e histogramas
- Inclui recursos avançados para pesquisadores de ciências sociais e análise de dados da web
- Compatível com Linux, macOS e Windows
- Reconhece automaticamente vários formatos, como
.tsv, .psv, .ssv, .gz
Exemplos de comandos principais
-
Exploração
xan headers: exibe a lista de colunas
xan view: visualiza em formato de tabela no terminal
xan flatten: expande todos os valores de uma linha para visualização
xan hist, xan plot, xan heatmap: recursos de visualização
-
Filtragem & busca
xan search -s 키워드 파일.csv: encontra linhas que contêm uma palavra-chave específica
xan filter '조건식' 파일.csv: filtra linhas com uma expressão
-
Transformação
xan select: seleciona colunas
xan map: cria uma nova coluna com uma expressão
xan transform: altera uma coluna existente com uma expressão
-
Agregação e análise
xan count: conta o número de linhas
xan frequency: gera uma tabela de frequências
xan stats: exibe estatísticas descritivas
xan agg: agregação definida pelo usuário
xan groupby: executa agregações por grupo
-
Ordenação & remoção de duplicatas
xan sort -s 컬럼: ordena
xan dedup -s 컬럼: remove duplicatas
-
Combinação
xan join: faz join com base em uma chave
xan merge: mescla arquivos ordenados
xan cat: concatena por linhas ou colunas
-
Linguagem de expressões
xan map 'fmt("{} ({})", name, foundation_year)' key
xan filter 'batch > 1'
xan transform name 'split(name, ".") | first | upper'
- A linguagem de expressões é uma DSL leve especializada em manipulação de CSV; consulte na documentação oficial a cola, lista de funções e lista de funções de agregação
-
Recursos de visualização
xan hist: histograma baseado em texto
xan plot: gráfico de dispersão/gráfico de linhas
xan heatmap: heatmap de correlação
xan view -p: exibe a tabela completa no terminal
Recursos avançados
- Suporte completo a pipelines de entrada/saída padrão
- Processamento automático de arquivos compactados em gzip
- DSL de scraping embutida (conversão de HTML → CSV)
- Suporte a lexicometria e fuzzy matching:
tokenize, vocab, cluster
- Transformação de rede/matriz:
network, matrix
1 comentários
Eu estava pensando em como isso poderia ser aplicado, mas acho que só usar
sortoudropjá seria útil.