Seaborn y NumPy
Seaborn es una biblioteca de visualización de datos en Python basada en Matplotlib . Está diseñada específicamente para crear visualizaciones atractivas y informativas con facilidad, especialmente para datos estadísticos y distribuciones. Seaborn se utiliza comúnmente en tareas de análisis de datos y visualización para explorar y comunicar patrones y relaciones en los datos.
Esta lección introduce una librería o módulo usado en ciencia de datos con Python. Instálalo con pip en local; en el editor de The Data Schools muchas ya vienen precargadas.
Importa, ejecuta el ejemplo mínimo y solo después pasa a casos más complejos.
Instalar Seaborn
Si aún no tienes Seaborn instalado, puedes hacerlo utilizando pip:
Ejemplo
pip install seaborn
Importar Matplotlib y Seaborn
Primero, importa las bibliotecas necesarias, Matplotlib y Seaborn:
Ejemplo
import matplotlib.pyplot as plt
import seaborn as sns
Crear Datos de Ejemplo
Para visualizar distribuciones, necesitas datos de ejemplo. Puedes generar algunos datos aleatorios utilizando NumPy:
Ejemplo
import numpy as np
# Generar una muestra de datos aleatorios con NumPy
data = np.random.randn(1000)
print(data)
print(data)
Distplots: Trazar un Diagrama de Distribución
Un distplot en Seaborn combina un histograma y una gráfica de densidad para visualizar la distribución de datos. Para crear un distplot, puedes usar la función
sns.distplot()
:
Ejemplo
data = pd.DataFrame({
"categoria": ["A", "B", "A", "C"],
"valor": [10, 20, 15, 30],
})
# Trazar un distplot
sns.di
# # Trazar un distplot
sns.distplot(data, bins=30, kde=True, color='blue')
plt.title('Diagrama de Distribución con Histograma y Densidad')
plt.xlabel('Valores')
plt.ylabel('Densidad')
plt.show()
plt.ylabel('Densidad')
plt.show()
-
data: Los datos que deseas visualizar. -
bins: El número de divisiones en el histograma. -
kde: SiTrue, se trazará la estimación de densidad kernel (Kernel Density Estimation). -
color: El color de la trama.
Trazar un Diagrama de Distribución sin el Histograma
Si deseas eliminar el histograma y ver solo la estimación de densidad, puedes hacerlo configurando
hist
en
False
:
Ejemplo
import numpy as np
# Generar una muestra de datos aleatorios con NumPy
data = np.random.randn(1000)
print(data)
print(data)
-
hist=False: Elimina el histograma.
Hemos visto cómo instalar Seaborn, importar Matplotlib y Seaborn, generar datos de ejemplo con NumPy y utilizar Seaborn para visualizar distribuciones utilizando distplots. También hemos visto cómo trazar un distplot con y sin el histograma. Esta es una introducción básica a la visualización de distribuciones con Seaborn en el contexto de NumPy, y puedes explorar más opciones y personalizaciones según tus necesidades.
Practica Seaborn y NumPy en el editor
Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.
Ejercicio: Visualizar distribuciones
Para visualizar distribuciones, necesitas datos de ejemplo. Puedes generar algunos datos aleatorios utilizando NumPy.
Ejercicio: Generar una muestra de datos aleatorios con numpy
Un distplot en Seaborn combina un histograma y una gráfica de densidad para visualizar la distribución de datos. Para crear un distplot, puedes usar la función sns.di.
Ejemplo
import numpy as np
# Generar una muestra de datos aleatorios con NumPy
data = np.random.randn(1000)
print(data)
Ejercicio: Trazar un distplot
Si deseas eliminar el histograma y ver solo la estimación de densidad, puedes hacerlo configurando hist en False.
Ejemplo
data = pd.DataFrame({
"categoria": ["A", "B", "A", "C"],
"valor": [10, 20, 15, 30],
})
# Trazar un distplot
sns.di
# # Trazar un distplot
sns.distplot(data, bins=30, kde=True, color='blue')
plt.title('Diagrama de Distribución con Histograma y Densidad')
plt.xlabel('Valores')
plt.ylabel('Densidad')
plt.show()
plt.ylabel('Densidad')
plt.show()
Cómo practicar
1. Pulsa Ejecutar en el bloque de código.
2. Modifica un valor o argumento.
3. Vuelve a ejecutar y observa la consola.