Breast Cancer Wisconsin (Diagnostic)
Regresión Logística Binaria
El presente notebook tiene como objetivo analizar el data set del diagnóstico de cáncer de mama en Wisconsin. Tal data set cuenta con 30 features (características) que son de vital importancia para determinar si el cáncer tiene un diagnóstico de benigno o maligno, por ello, es un problema de clasificación binomial porque cuenta con solo dos clases objetivo: ¿es benigno o es maligno?
Sin embargo, existen diversos modelos en Machine Learning (ML) que pueden ser usados para aplicar una regresión logística binaria, en este trabajo me enfocaré el el modelo de LogisticRegression, el modelo Descenso de la Gradiente Estocástica (SGDClassifier) y el modelo DecisionTreeClassifier.
Antes de realizar tal análisis, procederé con la limpieza de la información y análisis exploratorio de datos para que el data set se encuentre en condiciones óptimas para introducirlo en los modelos y no generen resultados sesgados.
Certificado como Data Analyst y Data Scientist en Platzi.
Fuente de datos: Kaggle - Breast Cancer Wisconsin (Diagnostic) Data Set
Librerías a importar
Procesamiento de la información
Cargar los datos
Limpieza de los datos
El data set original cuenta con 32 columnas, pero al momento de indexar la información en Deepnote se añadió automáticamente una columna con el nombre "Unnamed: 32" con valores vacíos, por ello, debe eliminarse. Adicionalmente, eliminaré la columna "id" por no ser relevante para el análisis posterior.
Luego de revisar la información con respecto al tipo de dato que almacenan los features llegué a la conclusión que no hay ningún problema, dado que, toda la información de los features en numérica; no obstante, el target o variable objetivo es del tipo objeto por lo que deberá ser transformada, posteriormente, en una variable numérica que el modelo de regresión logística pueda analizar y ejecutar.
Manejo de los datos nulos
Tras evaluar los datos nulos en el data set, concluyo que no habrá ningún problema con respecto a tal tópico.
Conversión del tipo de información de la variable objetivo (target)
Análisis de valores duplicados
Luego de determinar que no existen valores duplicados en el data set, procederé con la ejecución de los siguientes pasos del procesamiento de datos.
Análisis del desbalanceo de los datos del target
Tanto gráfica como estadísticamente, he demostrado que existe un desbalance en los casos que señalan un cáncer benigno frente a los que señalan un caso maligno. Por lo tanto, debo balancear los casos para evitar un entrenamiento sesgado.
Balanceo de los datos
Análisis Exploratorio de Datos
Mediante la evaluación de posibles presencias de outliers, concluyo que aproximadamente el 95% de los features presentan valores atípicos (outliers) en su información. Entonces, aplicando como supuesto que no es un error de introducción de información en la base de datos, opté por no eliminar tales datos, ya que, sería un error, dado que, estaría eliminado información valiosa y como dicen "la riqueza de la información depende de su variabilidad".
Análisis de correlación
En este caso, eliminaré 3 columnas porque presentan un coeficiente de correlación alrededor de 0, lo que significa que tales features no se encuentran relacionadas con el target. Las tres columnas son: fractal_dimension_mean, texture_se y symmetry_se.