Python

Análisis de outliers en Seaborn: Cómo identificar y visualizar valores atípicos

Los valores atípicos u outliers de un conjunto de datos son aquellos registros que se alejan de forma significativa de los demás puntos. Identificar estos valores es crucial para un correcto análisis de datos. No conocer ni comprender los outliers de un conjunto de datos puede llevar a conclusiones erróneas durante los análisis de datos, ya que su presencia afecta a los resultados. Seaborn dispone de herramientas para identificar visualmente los outliers de manera efectiva. En esta entrada se verá cómo usar los gráficos de cajas para identificar outliers en Seaborn.

Importación de un conjunto de datos

En esta entrada se usará el popular conjunto de datos iris que se incluye entre los que incluyen Seaborn. Por lo que solamente se tiene que importar Seaborn y llamar a la función load_dataset() con el nombre del conjunto para tener los valores en un DataFrame de Pandas.

import seaborn as sns
import pandas as pd

# Cargar datos de iris
iris = sns.load_dataset("iris")

Identificación de outliers en Searbon

Los gráficos de cajas de Searbon muestran por defecto los valores atípicos del conjunto de datos como puntos. Considerando como outliers todos aquellos valores que se alejan 1,5 veces del rango intercuartil (IRQ)del conjunto de datos. Esto se puede comprobar para el conjunto de datos iris calculando el IRQ y viendo que estos puntos son los que aparecen en la gráfica.

import matplotlib.pyplot as plt

# Calcular el rango intercuartil (IQR)
Q1 = iris['sepal_width'].quantile(0.25)
Q3 = iris['sepal_width'].quantile(0.75)
IQR = Q3 - Q1

# Definir los límites de los outliers
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR

# Identificar y resaltar los outliers en un gráfico de caja
sns.boxplot(x=iris['sepal_width'])
sns.scatterplot(x=iris[iris['sepal_width'] < lower_bound]['sepal_width'],
                y=0, s=150, facecolor='w', edgecolor='r', linewidth=1.5, label='Outliers')
sns.scatterplot(x=iris[iris['sepal_width'] > upper_bound]['sepal_width'],
                y=0, s=150, facecolor='w', edgecolor='r', linewidth=1.5)
plt.legend()

# Mostrar el gráfico
plt.show()
Identificación de outliers mediante los gráficos de caja de Seaborn

Un ejemplo en el que, en primer lugar, se calcula el IRQ mediante la diferencia entre los cuantiles 0,25 (Q1) y 0,75 (Q3) del conjunto de datos. Para identificar los outliers se define un límite inferior como el primer cuantíl menos 1,5 veces el IRQ, para el límite superior se usa el segundo valor más 1,5 el IRQ. Una vez definido los límites se crea una gráfica de cajas y, sobre ella, se dibuja un círculo rojo sobre los valores atípicos. Como se puede ver en la gráfica, los puntos negros son justamente los outliers.

# Identificar los outliers en un gráfico de caja por especie
sns.boxplot(x="species", y="sepal_width", data=iris)

# Mostrar el gráfico
plt.show()
Los outliers en función de la especie para el ancho del pétalo

La identificación de outliers en Seaborn también dentro del conjunto de datos iris también se puede hacer por especie.

Conclusiones

El análisis de outliers es esencial para identificar y comprender los valores atípicos dentro de los conjuntos de datos. Las gráficas de caja de Seaborn son una herramienta que permite identificar de forma visual si existen estos valores y donde están.

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez
Tags: Seaborn

Recent Posts

Los récords con asterisco, o la épica del titular sin contexto – El bestiario de los indicadores económicos absurdos (parte 8 y final)

Y llegamos al final de una serie que había programado para ser de tres entradas.…

2 días ago

PSI: Cómo Saber Cuándo tu Modelo de Credit Scoring se ha Degradado

Un modelo de credit scoring no es un artefacto estático. Se construye en un momento…

4 días ago

Los indicadores que se autocumplen, o cuando medir es modificar – El bestiario de los indicadores económicos absurdos (parte 7)

En las seis entregas anteriores hemos paseado por casi todos los géneros del disparate económico:…

1 semana ago

Customer Lifetime Value: la fórmula clásica que todo analista debería dominar

El Customer Lifetime Value (CLV) es, probablemente, la métrica más importante que puede calcular una…

2 semanas ago

Analytics Lane lanza la versión 1.4 del laboratorio con nuevas herramientas de conversión y modelos avanzados de CLV

Seguimos ampliando el laboratorio de Analytics Lane con el lanzamiento de la versión 1.4, que…

2 semanas ago

This website uses cookies.