Señalar valores atípicos con el IQR
Objetivos
Vas a usar una regla común para encontrar importes alejados del centro y revisar por qué no equivale a una regla de error.
Concepto
El rango intercuartílico (IQR, del inglés interquartile range) mide el tramo central entre el primer y el tercer cuartil: Q3 menos Q1. Una regla exploratoria marca valores por debajo de Q1 menos 1.5 por IQR o por encima de Q3 más 1.5 por IQR.
En el CSV, Q1 es 2.99, Q3 es 4.99 e IQR es 2.00. El límite superior es 7.99 y 857 filas quedan por encima. La regla describe rareza relativa en esta distribución; no demuestra que esos pagos sean errores.
Ejemplo
q1 = payments["amount"].quantile(0.25)
q3 = payments["amount"].quantile(0.75)
iqr = q3 - q1
lower = q1 - 1.5 * iqr
upper = q3 + 1.5 * iqr
unusual = payments.loc[
(payments["amount"] < lower) | (payments["amount"] > upper)
]
print(lower, upper, len(unusual))El resultado esperado es aproximadamente -0.01, 7.99 y 857 filas. Esta convención señala candidatos para inspección; la elección del límite depende de la pregunta y del contexto.
Práctica guiada
Muestra las cinco filas con amount más alto y comprueba que sus payment_id siguen siendo distintos. Después explica por qué una comparación extrema no prueba una carga equivocada.
Reto
Cuenta los registros que superan el límite superior del IQR y calcula su importe mediano. Describe el resultado como una clasificación exploratoria.
Intenta el reto antes de consultar las pistas.
Quiz
Comprobación
Marca valores con un método explícito y guarda el método junto al resultado. La siguiente lección incorpora la distancia temporal entre meses observados.