En la presente guía utilizaremos un conjunto de datos ficticios de solicitantes de préstamos que contiene 578 observaciones y 6 variables, como se describe a continuación:
- Dependientes: Número de dependientes del solicitante
- Ingresos: Ingresos anuales del solicitante (en USD)
- Cantidad de préstamo: Monto del préstamo (en USD) para el que se presentó la solicitud
- Término_meses: Duración del préstamo (en meses)
- Estado_de_aprobación: Si la solicitud de préstamo fue aprobada («1») o no («0»)
- Edad: La edad del solicitante en años
Empecemos por cargar las bibliotecas necesarias y los datos.
1234567891011 library(plyr)library(readr)library(ggplot2)library(GGally)library(dplyr)library(mlbench) dat <- read_csv("data_n.csv")glimpse(dat)
{r}
Salida:
123456789Observaciones: 578Variables: 6$ Dependientes... $ Ingresos...; 183700, 192300, 222400, 240000, 213300, 263600, 256800... $ Cantidad_de_préstamo...; 18600, 19500, 22300, 26000, 26600, 28000, 28000, 30000. ..$ Term_months <int> 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 204,... ...$ estado_de_aprobación <int...; 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, ...$ Edad <int...; 40, 63, 42, 30, 43, 46, 46, 68, 48, 72, 54, 54, 29, 70...
El resultado anterior muestra que el conjunto de datos tiene seis variables enteras (etiquetadas como $0027int$0027). Sin embargo, la variable $0027approval_status$0027 es una variable objetivo categórica y no se normalizará.
Estamos listos para llevar a cabo los pasos de normalización de datos más comunes. Comencemos mirando el resumen de las variables, usando el comando summary() .
123 summary(dat)
{r}
Salida:
1234567891011121314151617 Ingresos de los dependientes Cantidad de préstamo Plazo_meses Min. :0.0000 Min. : 173200 Min. : 18600 Min. : 36.0 1er Qu.:0.0000 1er Qu..: 389550 Primer cuatrimestre: 61500 Primer cuatrimestre: 384.0 Media: 0.0000 Media: 513050 Media: 76500 Media: 384.0 Media: 0.7561 Media: 715589 Media: 333702 Media: 365.5 Tercer cuatrimestre: 1.0000 Tercer cuatrimestre: 774800 Tercer cuatrimestre: 136250 Tercer cuatrimestre: 384.0 Máximo: 6.0000 Máximo. :8444900 Máximo :7780000 Máximo :504.0 estado_de_aprobación Edad Mínimo :0.0000 Mínimo :22.00 1er Qu.:0.0000 1er Qu.:37.00 Mediana :1.0000 Mediana :51.00 Media :0.6955 Media :49.71 3er Qu.:1.0000 3er Qu.:61.75 Máximo :1.0000 Máximo :76.00
El resultado anterior confirma que las variables numéricas tienen diferentes unidades y escalas, por ejemplo, «Edad» en años e «Ingresos» en dólares. Estas diferencias pueden influir indebidamente en el modelo y, por lo tanto, necesitamos escalarlas o transformarlas.
Utilizaremos el paquete caret en $0027R$0027, un potente paquete que utiliza la función de preproceso para llevar a cabo diferentes tipos de pasos de normalización de datos, como se explica en las secciones siguientes.