Carga y exploración de datasets de reseñas en Google Colab
Clase 2 de 16 • Curso de NLP con Python
Resumen
Una nube de palabras es una herramienta visual práctica para entender rápidamente cómo los clientes perciben un producto o servicio. Vamos a aprender cómo realizar esta tarea utilizando reseñas reales de Amazon en cinco pasos simples, ayudándonos con herramientas como Google Colab, Pandas, Matplotlib y Seaborn.
¿Qué necesitamos para crear una nube de palabras?
Para empezar con el análisis de reseñas en español directamente desde Amazon, necesitamos:
- Un archivo comprimido (.rar) con reseñas en español.
- Google Colab, una plataforma útil para aprovechar procesamiento gráfico cuando el proyecto lo requiera.
- Librerías de Python fundamentales para análisis de datos:
- Pandas: para manipular y explorar datos.
- Matplotlib y Seaborn: para realizar visualizaciones atractivas y claras.
¿Cómo cargamos y exploramos las reseñas de Amazon?
Inicialmente debemos subir el archivo comprimido y descomprimirlo directamente en Google Colab:
!unrar archivo.rar
Luego cargamos el conjunto de datos en formato CSV utilizando Pandas:
import pandas as pd
data = pd.read_csv('ruta_al archivo.csv')
data.head(3)
Al explorar nuestro conjunto de datos, encontramos:
- ID del usuario que dejó la reseña.
- Producto asociado.
- La calificación otorgada en estrellas (del 1 al 5).
- Comentarios (cuerpo) y título de la reseña.
- Categoría del producto.
Además, con data.tail(3)
, revisamos rápidamente las últimas filas, asegurándonos una visión amplia del dataset.
¿Cómo analizamos la distribución de reseñas por estrellas?
Un análisis visual nos permite identificar rápidamente la cantidad de reseñas según las estrellas otorgadas. Utilizando Matplotlib y Seaborn:
import matplotlib.pyplot as plt
import seaborn as sns
plt.figure(figsize=(8,4))
sns.countplot(x='stars', data=data)
plt.title('Distribución de puntuaciones')
plt.xlabel('Estrellas otorgadas')
plt.ylabel('Cantidad de reseñas')
plt.show()
Observamos que el dataset está equilibrado, facilitando inferencias y análisis posteriores.
¿Qué categorías predominan en las reseñas analizadas?
Explorar las categorías más frecuentes ayuda a enfocar mejor nuestros análisis:
categorias = data['categoria'].value_counts().head(9)
otros = data['categoria'].value_counts()[9:].sum()
categorias['Otros'] = otros
plt.figure(figsize=(8,4))
sns.barplot(x=categorias.index, y=categorias.values, palette='Blues_d')
plt.title('Distribución de productos: Top 9 más Otros')
plt.xlabel('Categorías')
plt.ylabel('Cantidad de productos')
plt.show()
Las principales categorías incluyen hogar, artículos inalámbricos y juguetes, siendo importante considerar la categoría "Otros" que reúne una significativa cantidad de productos.
Si tienes dudas sobre algún paso o quieres compartir tu experiencia visualizando reseñas con nubes de palabras, te invitamos a comentar.