Una herramienta / utilidad de Linux para identificar palabras no vacías en texto en inglés

¿Hay alguna herramienta a la que pueda enviar un archivo de texto u otro archivo que identifique palabras inusuales (no en una lista de palabras vacías) en Linux?

Por ejemplo, se excluirán las palabras que generalmente están en inglés, pero las palabras de la jerga técnica se mostrarán como palabras continuas ( inusuales) con un conteo. También debe ser sensible a mayúsculas y minúsculas.

Aquí hay un ejemplo de lo que quiero decir...

Si tengo la frase:

"Tommy programó en Powershell, PowerShell, C++ y SQL, mientras usaba VirtualBox, en su VirtualBox".

Entonces devolvería un resultado como este:

1, Powershell
1, PowerShell
1, C++
1, SQL
2, VirtualBox

Supongo que lo que estoy tratando de hacer es estandarizar el caso de las palabras inusuales, y la herramienta tomará el texto e intentará encontrarlo, así que cuando lo corrija, sé que lo tengo todo.

Soy consciente de que puede buscar cosas con vim, pero es mucho más fácil no perderse nada si ya tiene una lista de palabras para ignorar (palabras vacías) que facilitan la separación de las palabras vacías de las únicas.

(Y, por supuesto, siempre puede eliminar cualquier palabra como "Rubí" de la lista de palabras vacías para que también aparezcan cuando las necesite)

Quiero decir, realmente todo lo que necesita es una lista de palabras y un script para ejecutarlas, pero pensé en preguntar si no había una herramienta preconstruida para esto.

en.wikipedia.org/wiki/Stop_words dice que no existe una lista universal única de palabras de parada, pero supongo que el autor de la pregunta estará de acuerdo con cualquier lista que haga un trabajo razonable.

Respuestas (1)

El kit de herramientas de lenguaje natural de Python nltk es probablemente su mejor apuesta aquí. Hay ejemplos del tipo de cosas que está tratando de hacer en el libro en línea , como el ejemplo de palabras inusuales .

  • Hay mucho soporte para contar ocurrencias.
  • Le sugiero que use verificaciones que no distingan entre mayúsculas y minúsculas para eliminar las palabras "comunes" antes de contar con distinción entre mayúsculas y minúsculas.
  • Python está tan disponible para Linux y casi todo lo demás .