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

Data Lake y Data Warehouse: diferencias, usos y cómo se complementan en la era del dato

En la era del dato, las organizaciones se enfrentan al reto de gestionar volúmenes masivos…

2 días ago

Documentar tu API de Express con TypeScript usando OpenAPI (Swagger)

En la serie Creación de una API REST con Express y TypeScript construimos una API…

4 días ago

Curiosidad: El sesgo de supervivencia, o por qué prestar atención sólo a los que “llegaron” puede engañarte

Durante la Segunda Guerra Mundial, la Fuerza Aérea de Estados Unidos quería reforzar sus aviones…

1 semana ago

Cómo abrir una ventana de Chrome con tamaño y posición específicos desde la línea de comandos en Windows

En muchas situaciones —ya sea para grabar un tutorial, tomar capturas de pantalla profesionales, probar…

2 semanas ago

La Paradoja del Cumpleaños, o por qué no es tan raro compartir fecha de nacimiento

Imagínate en una sala con un grupo de personas, por ejemplo, en una oficina, un…

2 semanas ago

Programador de tareas de Windows: Guía definitiva para automatizar tu trabajo (BAT, PowerShell y Python)

En el trabajo diario con ordenadores, es común encontrarse con tareas repetitivas: realizar copias de…

3 semanas ago

This website uses cookies.