Reducir el grupo mayoritario
En lugar de aumentar el número de casos de fraude en el conjunto de datos, puedes eliminar aleatoriamente casos legítimos para equilibrarlo. Vamos a submuestrear la clase mayoritaria (Class = 0) en el conjunto creditcard. Puedes usar table() en la consola para saber cuántas transacciones fraudulentas y legítimas hay en el conjunto.
Este ejercicio forma parte del curso
Detección de fraude en R
Instrucciones del ejercicio
- Carga la librería ROSE.
- Define
n_newcomo el número requerido de casos en el conjunto submuestreado de forma que el nuevo conjunto tenga un 40% de casos de fraude. Para ello, debes dividir el número de casos de fraude entre el porcentaje deseado de casos de fraude en el conjunto submuestreado. - Aplica el submuestreo al conjunto de datos.
- Usa
table()yprop.table()para comprobar el balance de clases del conjunto submuestreado.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Load ROSE
___
# Calculate the required number of cases in the over-sampled dataset
n_new <- ___
# Under-sample
undersampling_result <- ___(formula = ___, data = ___,
___ = ___, ___ = ___, seed = 2018)
# Verify the Class-balance of the under-sampled dataset
undersampled_credit <- undersampling_result$___
___(___(___))