Transformación de datos de texto
Archivos de datos
/home/student/ITSAI/ETL/Handling Textual Data.ipynb
/home/student/ITSAI/ETL/data/home_loan_complaints.csv
Antes de empezar
Se abrirán las pestañas Accessing and Managing Data for AI.ipynbI e ITSAI/ETL/ en Jupyter Notebook.
Escenario
Deberá utilizar los datos de quejas de los consumidores para practicar el control de datos textuales. El control de los datos textuales dentro de este archivo requiere un enfoque muy diferente al de los datos numéricos y categóricos con los que trabajó anteriormente. Necesita una forma de procesar el texto para que sea más favorable para el análisis y el aprendizaje automático. Hay muchas técnicas para hacerlo y aplicará varias de ellas a los datos de la queja.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
1. En el cliente web de Jupyter Notebook, seleccione la pestaña ITSAI/ETL/.
Nota: Asegúrese de que el cuaderno Accessing and Managing Data for AI.ipynb siga abierto y que esté abriendo este nuevo cuaderno en una pestaña diferente.
2. Seleccione Handling Textual Data.ipynb para abrirlo.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
2. Importe las bibliotecas de software relevantes.
1. Vea la celda titulada Importar bibliotecas de software y examine la lista de código debajo de ella.
Este código importa las varias bibliotecas de software que se utilizarán en este programa y, luego, muestra los nombres de las diferentes bibliotecas.
2. Ejecute la celda de código.
3. Compruebe que se muestra la versión de Python, junto con las versiones de las otras bibliotecas que se importaron.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
3.Lea y obtenga una vista previa de los datos de texto.
1.Desplácese hacia abajo y vea la celda titulada Leer y obtener una vista previa de los datos de texto y examine la lista de código debajo de ella.
Este código carga los datos y muestra su estructura.
2. Ejecute la celda de código.
Cada usuario que presentó una queja se muestra en una fila y cada columna es un aspecto diferente del usuario o su queja.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
4.Extraiga un subconjunto de datos para tener en cuenta solo las quejas de los consumidores.
1. Desplácese hacia abajo y vea la celda titulada Extraer un subconjunto de datos para tener en cuenta solo las quejas de los consumidores y examine el listado de código debajo de él.
Este código mostrará el número de quejas sin texto para la queja del usuario.
2.Ejecute la celda de código.
Como era de esperar, la mayoría de los registros no se presentaron con el texto real de la queja del usuario.
4. En la siguiente celda de código, examine el código.
Este código mueve solo los registros que realmente tienen una narrativa de queja a un nuevo conjunto de datos.
5. Ejecute la celda de código.
El conjunto de datos reducido tiene el ID del usuario y el texto de su queja.
7. En la siguiente celda de código, examine el código.
Este código mostrará el número de filas y columnas de este conjunto de datos.
8. Ejecute la celda de código.
Hay 22 filas y 2 columnas.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
5.Obtenga un ejemplo de las quejas de los consumidores.
1.Desplácese hacia abajo y vea la celda titulada Obtener un ejemplo de las quejas de los consumidores y examine la lista de código debajo de ella.
Este código mostrará el primer texto de queja.
2. Ejecute la celda de código.
La queja está llena de caracteres como puntuación, números y palabras comunes. Deberá simplificar este texto para que sea más fácil de analizar.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
6.Tokenice una oración en palabras.
1. Desplácese hacia abajo y vea la celda titulada Tokenizar una oración en palabras y examine la lista de código debajo de ella.
Este código utiliza una biblioteca de procesamiento de texto de terceros denominada spaCy para crear un documento a partir del texto de ejemplo. Para demostrar la tokenización de palabras individuales, este código toma una única frase del documento en general.
2. Ejecute la celda de código.
3. En la siguiente celda de código, examine el código dentro de ella.
Este código mostrará cada palabra de la oración.
4. Ejecute la celda de código.
Se muestra cada "palabra" individual (según lo definido por spaCy). Tenga en cuenta que los números y la puntuación cuentan como palabras.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
7. Identifique las categorías gramaticales de cada token.
1. Desplácese hacia abajo y vea la celda titulada Identificar las categorías gramaticales de cada token y examine la lista de código debajo de ella.
Los procesadores de texto como spaCy pueden identificar el rol de cada token en una oración, incluidos aquellos que no son palabras como números y signos de puntuación.
2. Ejecute la celda de código.
La tabla enumera a qué categoría gramatical pertenece cada token. Por ejemplo, It
es un pronombre, is
es un verbo auxiliar (un verbo que afecta a los tiempos y modos de otros verbos), {
es puntuación, 250.00
es un número y así sucesivamente.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
8.Identifique palabras irrelevantes.
1. Desplácese hacia abajo y vea la celda titulada Identificar palabras irrelevantes y examine la lista de código debajo de ella.
Este código identificará si un token califica o no como una palabra irrelevante o una palabra que es tan común que debe excluirse del texto para no ejercer una influencia indebida.
2. Ejecute la celda de código.
Las palabras como It
e is
se consideran palabras irrelevantes, pero showing
no lo es.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
1.Desplácese hacia abajo y vea la celda titulada Transformar el texto y examine la lista de código debajo de ella.
Este código transformará los datos de texto combinando algunos de los métodos que acaba de observar. El código transformará los datos de texto omitiendo la puntuación, los espacios, los números y las palabras identificadas como palabras irrelevantes.
2.Ejecute la celda de código.
3. En la siguiente celda de código, examine el código.
Este código probará la transformación en el ejemplo de texto de queja única.
4. Ejecute la celda de código.
Como se esperaba, el texto de la revisión se simplificó.
6. En la siguiente celda de código, examine el código.
Este código mostrará el texto de ejemplo original.
7. Ejecute la celda de código.
Puede ver diferencias significativas entre la forma original de la queja y la queja después de someterla a un procesamiento de texto.
9. En la siguiente celda de código, examine el código.
Este código aplicará la transformación a todo el conjunto de datos.
10. Ejecute la celda de código.
Nota: Esto puede tardar unos minutos en ejecutarse.
Se muestran los tres primeros registros, junto con la narrativa original y la narrativa transformada para cada queja.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
10. Cierre este kernel de Jupyter Notebook.
1. En el menú, seleccione Kernel→Cerrar.
2. En el cuadro de diálogo ¿Cerrar kernel?, seleccione Cerrar.
3. Cierre la pestaña Handling Textual Data.ipynb en Firefox, pero vuelva al cuaderno Accessing and Managing Data for AI.ipynb.
-------------------------------------------------------------------------------------------------------------------------------------------------------------