Evitar desequilibrios de clases
Algunos datos presentan resultados muy desequilibrados, como en un conjunto de datos sobre una enfermedad poco frecuente. Si divides al azar, podrías terminar con una partición muy desafortunada. Imagina que todas las observaciones raras caen en test y ninguna en training. ¡Eso arruinaría todo tu proceso de entrenamiento!
Por suerte, la función initial_split() ofrece una solución. En este ejercicio, vas a observar y corregir estos llamados desequilibrios de clases.
Ya tienes código preparado para crear un objeto de partición diabetes_split con un 75% para training y un 25% para test.
Este ejercicio forma parte del curso
Machine Learning con modelos basados en árboles en R
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Preparation
set.seed(9888)
diabetes_split <- initial_split(diabetes, prop = 0.75)
# Proportion of 'yes' outcomes in the training data
counts_train <- table(training(___)$outcome)
prop_yes_train <- counts_train["___"] / sum(counts_train)
# Proportion of 'yes' outcomes in the test data
counts_test <- table(___)
prop_yes_test <- ___ / sum(___)
paste("Proportion of positive outcomes in training set:", round(prop_yes_train, 2))
paste("Proportion of positive outcomes in test set:", round(prop_yes_test, 2))