
Al trabajar con conjuntos de datos que contiene múltiples variables es clave ser capaz de visualizar las relaciones que existen entre estas. Para comprender, así cómo se relacionan las variables entre sí. Seaborn, una de las principales bibliotecas de visualización de datos en Python, dispone de varias funciones para trabajar con datos multidimensionales. En esta entrada, se verán dos de estas funciones para trabajar con datos multidimensionales en Seaborn: los gráficos de pares y los gráficos de factores.
Importación del conjunto de datos iris
En esta entrada se utilizará el popular conjunto de datos iris para crear los gráficos de pares y los gráficos de factores. Este conjunto de datos se encuentra disponible en la propia biblioteca de Seaborn, por lo que se puede importar mediante la función load_dataset()
indicándole el nombre del conjunto de datos.
import seaborn as sns # Cargar el conjunto de datos "iris" de Seaborn iris = sns.load_dataset("iris") # Imprimir los primeros registros del conjunto de datos print(iris.head())
sepal_length sepal_width petal_length petal_width species 0 5.1 3.5 1.4 0.2 setosa 1 4.9 3.0 1.4 0.2 setosa 2 4.7 3.2 1.3 0.2 setosa 3 4.6 3.1 1.5 0.2 setosa 4 5.0 3.6 1.4 0.2 setosa
Gráficos de pares (pairplot)
Los gráficos de pares (pairplot) permiten visualizar las relaciones entre los pares de variables de un conjunto de datos multidimensional. En Seaborn se incluye la función pairplot()
con la que es posible crear de forma automática este tipo de gráficos para cada par de variables de un DataFrame de Pandas. El uso de la función es extremadamente sencilla, solamente se debe pasar un DataFrame, lo que se muestra en el siguiente ejemplo.
# Crear un gráfico de pares sns.pairplot(iris)

En esta gráfica se puede ver la relación que existe entre cada una de las variables del conjunto de datos con el resto. Además, en la dragona principal de la matriz se puede ver el histograma de cada una de las variables. En los gráficos de dispersión se puede incluir una regresión lineal, algo que puede facilitar el análisis de las relaciones. Esto se puede conseguir indicando mediante el parámetro kind
que el tipo de gráfica es 'reg'
.
# Crear un gráfico de pares con regresión lineal sns.pairplot(iris, kind='reg')

Otra alternativa para los gráficos de pares es usar gráficos de densidad, para lo que se debe indicar la propiedad 'kde'
mediante el parámetro kind
.
# Crear un gráfico de pares con graficos de densidad sns.pairplot(iris, kind='kde')

Gráficos de factores
Los gráficos de factores permiten dividir un conjunto de datos en subconjuntos más pequeños según una o más variables categóricas y crear una visualización separada para cada subconjunto. Seaborn ofrece varias funciones, como FacetGrid()
y catplot()
, para crear estos tipos de gráficos.
En el siguiente ejemplo, se muestra cómo se puede utilizar FacetGrid()
para crear una cuadrícula y luego incluir gráficos de dispersión a cada de ellas con el método map()
. Notese que FacetGrid()
es una clase, por lo que su uso es algo más complicado que una función como es el caso de catplot()
. En primer lugar, al construir el objeto se usa el conjunto de datos y la columna por la que se desea dividir los datos. A continuación, en el método map()
se indica la función y las columnas que se desean representar, en este caso la longitud y el ancho del sépalo.
# Crear un gráfico de factores utilizando FacetGrid g = sns.FacetGrid(iris, col="species") g.map(sns.scatterplot, "sepal_length", "sepal_width")

Seaborn también ofrece la función catplot()
para crear gráficos de facetas más fácilmente, especialmente para variables categóricas.
# Crear un gráfico de factores utilizando catplot sns.catplot(data=iris, x="sepal_length", y="sepal_width", col="species")

Conclusiones
Los gráficos de pares y los gráficos de factores son dos herramientas que se pueden emplear para visualizar la relación entre datos multidimensionales en Seaborn. Facilitando la exploración y comprensión de las relaciones entre variables en conjuntos de datos multidimensionales.
Deja una respuesta