Como contar o número de ocorrências de cada palavra em um arquivo?

6

Eu preciso de um programa para contar o número de palavras junto com o número de ocorrências de cada palavra em um arquivo.

(A maioria dos exemplos encontrados apenas conta o número total de palavras.)

    
por ArK 24.10.2009 / 11:57

7 respostas

6

O serviço online gratuito Wordcounter classifica as palavras mais usadas em qualquer corpo de texto. Use isso para ver quais palavras você usa em excesso ou talvez apenas para encontrar algumas palavras-chave de um documento.

    
por 24.10.2009 / 12:25
16

Se estiver usando a linha de comando (ou um script), então há um milhão de opções. Como usando o Perl (para o Windows, você precisa instalar o ActivePerl ou Cygwin com Perl):

perl -0777 -lape's/\s+/\n/g' FILENAME | sort | uniq -c | sort -nr

Explicação :

  • perl -0777 faz com que o Perl opere no arquivo inteiro como se fosse uma linha ("modo slurp").
  • 's/\s+/\n/g' altera todos os espaços em branco em novas linhas, assim: a saída de Perl é uma palavra por linha.
  • O comando sort classifica as palavras em ordem alfabética.
  • O comando uniq elimina palavras duplicadas; com a opção -c , também imprime o número de ocorrências.
  • O segundo comando sort , com a opção -nr , classifica numericamente o arquivo resultante em ordem decrescente.
por 24.10.2009 / 12:55
5

Isso é muito fácil. Basta usar o seguinte comando:

sort file.txt | uniq -c | sort -r

    
por 07.01.2011 / 15:21
2

De uma linha de comando do Linux:

sed s/' '/\n/g FILENAME | sort | uniq -c | sort -nr

No Mac OS X, que usa a versão BSD de sed , o \n precisa de alguma mágica :

sed 's/ /\'$'\n/g' FILENAME | sort | uniq -c | sort -nr 
    
por 22.08.2012 / 21:44
2

Linha de comando do Linux (Ubuntu):

tr -cs "[:alpha:]" "[\n*]" < file1 | sort | uniq -c | sort -nr > file2
    
por 15.02.2013 / 02:13
0

Tanto o MS Office quanto o OpenOffice têm esse recurso. Vá para ferramentas / contagem de palavras.

    
por 24.10.2009 / 12:20
0

Se você estivesse usando o Windows, poderia usar o processador de texto Atlantis . Ele tem um monte de pequenos recursos e toques, incluindo um para acender o uso excessivo de palavras.

    
por 24.10.2009 / 13:02

Tags