Obtener las palabras más usadas de un texto y las veces que se repiten: con Python y GNU Coreutils

En este artículo muestro cómo obtener las palabras más utilizadas de un texto de forma sencilla. En este caso, yo usaré como demostración el texto del libro octavo de la novela Τῶν περὶ Χαιρέαν καὶ Καλλιρρόην, extraído de https://www.perseus.tufts.edu/hopper/text?doc=Perseus%3Atext%3A2008.01.0668%3Abook%3D8. Le he quitado las anotaciones que tenía entre corchetes con sed...

sed -i 's/\[[^]]*\]//g' libro_octavo.txt

El programa que nos muestra todas las palabras es el siguiente, lo he llamado lista-de-palabras.py (explico cómo funciona más abajo):

archivo_texto = open('libro_octavo.txt', 'r')
texto = archivo_texto.read()
archivo_texto.close()

palabras = texto.split()

for palabra in palabras:
    print(palabra.strip('‘’:;,.').lower())

En el archivo con el texto, que he llamado libro_octavo.txt (descargar), asumo que una palabra está separada por un espacio en blanco, así que uso la función split para obtener la lista de palabras. Sin embargo, a veces hay comas, puntos, comillas, dos puntos y puntos y comas antes o después de las palabras, y a veces empiezan por mayúscula. Para estos casos basta usar la función strip(), con los caracteres que queremos desechar entre comillas, y lower() para poner la palabra en minúscula.

Ahora quiero se muestren por pantalla las palabras que más veces aparecen en el texto, con el número de veces que aparecen a su izquierda; pero no voy a programarlo yo, sino que voy a utilizar herramientas que permiten hacer eso en GNU/Linux: uniq y sort.

Continúa leyendo Obtener las palabras más usadas de un texto y las veces que se repiten: con Python y GNU Coreutils
Publicado el Modificado el Categoría En GNU/Linux Etiquetas , , en Obtener las palabras más usadas de un texto y las veces que se repiten: con Python y GNU Coreutils

Descansa los ojos de vez en cuando con Safe Eyes

Si pasas muchas horas seguidas delante del ordenador, puede que experimentes los problemas del síndrome visual informático:

  • Astenopía
  • ojos secos, irritados o enrojecidos
  • Poliopía (visión doble)
  • dificultad para reorientar los ojos
  • doleres de cabeza, espalda y cuello
  • cansancio

Para evitar estos síntomas basta con tomar descansos a menudo. Sin embargo, es complicado acordarse de cuánto tiempo has pasado sin descansar cuando estás concentrado trabajando. El programa Safe Eyes nos ayuda a resolver el problema.

Safe Eyes pone la pantalla negra y dice «Cierra fuertemente tus ojos»

Continúa leyendo Descansa los ojos de vez en cuando con Safe Eyes

Reducir la luz azul de la pantalla con Redshift

La luz azul es emitida por fuentes naturales, como el sol, y pantallas de dispositivos electrónicos. Se considera que aproximadamente un tercio de toda la luz visible por el ser humano es azul. La excesiva exposición a este tipo de luz causa serios problemas de salud.

Continúa leyendo Reducir la luz azul de la pantalla con Redshift

Combinar grep y less con color

Suelo usar Grep para buscar un texto exacto en archivos. Usando grep -R texto dentro de un directorio, puedo localizar todos sus archivos en los que se encuentra dicho texto.

Cuando simplemente ejecuto algo como «grep -R 'Freak Spot'», los colores se ven correctamente

Cuando hay muchas coincidencias es más cómodo usar less para moverse por los resultados. El problema es que al ejecutar grep -R texto | less los colores ya no se ven.

Continúa leyendo Combinar grep y less con color