Introducción
Python es un lenguaje de programación robusto y polivalente, muy popular en el ámbito del análisis de datos y la estadística. Su rico ecosistema incluye bibliotecas especializadas en el análisis de texto y el procesamiento de lenguaje natural (NLP), lo que lo convierte en una opción excelente para manipular información textual.
En este desafío, aprovecharemos las capacidades de Python para realizar análisis estadísticos basados en una colección de archivos de texto. Vamos a explorar cómo extraer información valiosa y conocimientos significativos a partir de datos de texto puro.
Conteo Total de Palabras
Encontrarás varios archivos de texto ubicados en la carpeta home/labex/files.
Tu tarea consiste en escribir un script de Python, llamado word_count.py, que lea todos estos archivos y calcule el número total de palabras contenidas en el conjunto de los mismos.
Es importante tener en cuenta que los signos de puntuación no deben considerarse como palabras. Por ejemplo, en el archivo "java", hay exactamente 111 palabras.
Requisitos
- El script debe imprimir el conteo total de palabras en la consola al ser ejecutado.
Palabras de Alta Frecuencia
Tras haber contabilizado el total de palabras, tu siguiente objetivo es identificar las 3 palabras más frecuentes en todos los archivos de texto. Debes desarrollar un script de Python denominado top_3_high_frequencies.py para lograrlo. El script deberá mostrar en la consola estas 3 palabras junto con sus respectivas frecuencias, ordenadas de mayor a menor.
Por ejemplo, el resultado debería verse así:
python top_3_high_frequencies.py
## print word and frequency in console
word1 20
word2 15
word3 13
Requisitos
- El script debe imprimir las 3 palabras principales y sus conteos en la consola al ejecutarse.
- El conteo de palabras distingue entre mayúsculas y minúsculas (case-sensitive), lo que significa que "Palabra" y "palabra" se consideran términos distintos.
- Los signos de puntuación no forman parte de las palabras y deben excluirse del conteo.
Alineación de Palabras en Orden
Ahora, consideremos el orden de las palabras dentro de cada archivo. ¿Qué pasaría si quisiéramos recolectar la primera palabra de cada archivo, luego la segunda palabra de cada archivo, y así sucesivamente?
Tu tarea es escribir un script de Python, step3_code.py, que tome la n-ésima palabra de cada archivo de entrada y las escriba en un nuevo archivo llamado output/n. Aquí, 'n' representa la posición de la palabra (comenzando desde 1). Los archivos resultantes deben crearse en el directorio /home/labex/project/output/.
Por ejemplo, si tomamos las primeras palabras de cada archivo, el contenido de output/1 debería ser:
## output/1, start count with 1.
CentOS Java A Python Ubuntu
Del mismo modo, para las centésimas palabras (en caso de que existan), el contenido de output/100 sería:
## output/100, the 100-th file, only java, linux and program have 100-th word.
applications and the
Requisitos
- La carpeta
outputdebe estar ubicada en/home/labex/project/. - El orden en que se lean los archivos no es relevante; solo importa el orden de las palabras dentro de cada archivo individual.
- Los signos de puntuación no se consideran parte de las palabras y deben ser omitidos.
Resumen
En este desafío de Python, has aprendido a utilizar el lenguaje para realizar análisis básicos de datos de texto. Has practicado cómo contar el total de palabras, identificar los términos de mayor frecuencia y extraer palabras basándote en su posición relativa en múltiples archivos, guardando los resultados en archivos de salida independientes. Al completar este reto, has adquirido habilidades valiosas para el manejo de datos textuales en Python, fortaleciendo tu capacidad para realizar análisis estadísticos lingüísticos. Estas competencias constituyen la base para tareas de procesamiento de texto más avanzadas en el futuro.



