Sobre-muestreo aleatorio
Solo una fracción muy pequeña de las transferencias de crédito es fraudulenta. Ahora vas a sobre-muestrear los casos de fraude para equilibrar la distribución de clases. La variable Class en el conjunto de datos creditcard toma el valor 1 en caso de fraude y 0 en caso contrario.
Puedes usar la consola para mostrar las columnas de creditcard con str(), imprimir las primeras 6 filas del conjunto con head() y comprobar el equilibrio de clases con table(creditcard$Class).
Este ejercicio forma parte del curso
Detección de fraude en R
Instrucciones del ejercicio
- Carga el paquete
ROSE. - Especifica
n_newcomo el número de casos requerido en el conjunto sobre-muestreado de forma que el nuevo conjunto tenga 30% de casos de fraude y por tanto 70% de casos legítimos. Para ello, divide el número actual de casos legítimos entre el porcentaje deseado de casos legítimos en el conjunto sobre-muestreado. - Usa la función
ovun.sample()para el sobre-muestreo usandoClass ~ .como fórmula. - Comprueba el equilibrio de clases del conjunto sobre-muestreado.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Load ROSE
___
# Calculate the total number of required cases in the over-sampled dataset
print(table(creditcard$Class))
n_new <- ___
# Over-sample
oversampling_result <- ___(formula = ___, data = ___,
method = ___, N = ___, seed = 2018)
# Verify the Class-balance of the over-sampled dataset
oversampled_credit <- oversampling_result$data
prop.table(___(___))