Proyecto Minería de Datos
Proyecto Minería de Datos
Proyecto Minería de Datos
Código : 430811
El siguiente informe trata sobre el análisis de una base de datos de clientes de un banco, en dicha
base de datos se encuentran datos del perfil del cliente como también de su historial de pago, se
procede a la limpieza de la base de datos eliminando datos nulos mediante métodos ensayados
en la misma base de datos para determinar cual es el que mejor resultados ofrece, posteriormente
se tratan los datos fuera de rango, se extraen datos promediando algunos del historial del cliente
para finalmente se seleccionan los atributos más importantes y se procede a transformar la base
de datos a una completamente categórica y otra completamente numérica.
Página 1
Índice
Resumen ...........................................................................................................................1
Introducción ......................................................................................................................3
Conocimiento y descripción de la base de datos.............................................................4
Limpieza de la Base de Datos ..........................................................................................6
Imputación de Datos Faltantes .........................................................................................7
Extracción de Atributos .....................................................................................................9
Identificación y Tratamiento de Outlets. ...........................................................................9
Transformación de Datos ...............................................................................................10
Transformación de la base de datos categórica a completamente numérica .........................10
Transformación de la base de datos numérica a completamente categórica .........................10
Elección de atributos importantes ..................................................................................11
Árbol de Decisión ............................................................................................................13
Conclusiones ..................................................................................................................14
Bibliografía y linkografía .................................................................................................15
Página 2
Introducción
Finalmente se presenta un árbol de decisión con las relaciones entre las variables
y como estas predicen el comportamiento de pago del cliente.
Página 3
Conocimiento y descripción de la base de datos
En minería de datos es de suma importancia conocer los datos que contiene la base con
la cual se está trabajando, es por ello que el primer paso que se realizó es entender la base de
datos y darles sentido a los datos. La base esta compuesta básicamente por un lostado de
clientes identificados con un ID, a quienes se les asignó un crédito, el monto otorgado en el crédito
se indica en el atributo LIMIT_BAL, esto es acompañado con un perfil de cliente que componen
las columnas de los demás atributos, entre ellos se encuentra SEX (sexo), EDUCATION (nivel
de estudios), CASS_WORKER (clase de trabajador), MAJOR_OCCPTN (código de ocupación
mayor del trabajador) , MARRIAGE (estado civil), AGE (edad). Además la base de datos contiene
el historial de pago, el monto facturado y monto pagado por el cliente durante 6 meses entre abril
y septiembre. Igualmente existe el atributo ACC_OBANK que hace referencia a si el cliente tiene
o no cuenta en otro banco, por ultimo el atributo DEF_PAY_NEXT_MONT que indica si pagará o
no el próximo mes, este atributo es de suma importancia ya que el objetivo de este proyecto es
extrae los datos que permitan predecir de buena manera si em cliente pagará o no el siguiente
mes. A continuación, se hace un análisis de todos los atributos y la importancia que pueden tener
o no tener en el modelo
1- LIMIT_BAL: Es una variable numérica que indica el monto del crédito otorgado en
dólares que incluye tanto el crédito al consumo individual como el crédito familiar
complementario. Este atributo entrega información sobre la magnitud de la deuda del
cliente, se puede inferir que mientras más alto es el monto que se otorgó también más
exhaustivo fue el análisis de riesgo previo que se realiza al momento de otorgar un
crédito y por lo tanto se puede especular suponiendo que es más probable que pague
el siguiente mes a que no pague, claro está que es solo una conjetura previa que se
comprobará en el desarrollo del proyecto.
2- SEX: Es una variable categórica nominal, que indica el sexo del cliente, este atributo
posibilita estudiar la existencia de una correlación entre el sexo del cliente y la
disposición de pago para el mes siguiente.
3- EDUCATION: Es una variable categórica ordinal que indica el nivel de estudios del
cliente, es común asumir que mientras más alto sea el nivel de estudios mayor es el
ingreso de las personas y por lo tanto también su nivel de vida, esto permite crear la
conjetura de que podría relacionarse con el monto de crédito otorgado en LIMIT_BAL.
También puede ser de sentido común pensar que mientras más alto el nivel de
estudios más responsable y organizada puede ser la persona por lo que es más
probable que una persona con más estudios pague el siguiente mee.
4- CLASS_WORKER: Es una variable categórica nominal que indica el sector donde se
desempeña laboralmente el cliente, tiene 9 categorías que son: Federal gobermment,
Local Gobermment, Never worked, Not especified, Private, Self employed
incorporated, Self employed not incorporated, State govermment, Whitout pay. En este
atributo se pueden hacer conjeturas básicamente sobre si es un trabajador cesante o
Página 4
independiente no incorporado pueden tener menos probabilidades de pagar el
siguiente mes, sin embargo, no es un atributo que se pueda considerar con mucha
relevancia a la hora de predecir el comportamiento de pago por lo cual es un candidato
para eliminar
5- MAJOR_OCCPTN: Es una variable categórica nominal que indica el código de
ocupación que mayormente desarrolla el cliente, contempla 15 categorías: Not
Specified, Adm support including clerical, Professional specialty, Executive admin and
managerial, Other service, Sales, Precision production craft & repair, Machine
operators assmblrs & inspctrs, Handlers equip cleaners etc , Transportation and
material moving, Farming forestry and fishing, Technicians and related support,
Protective services, Private household services, Armed Forces. De este atibuto se
puede especular sobre alguna relación entre algún tipo de ocupación que necesite de
constante apoyo bancario al cual no le convenga no pagar o atrasarse en alguna
cuota, también se pueden hacer conjeturas sobre alguna ocupación de mayores
ingresos en más probable que pague, sin embargo preliminarmente no parece aportar
demasiada información al objetivo de este estudio que es predecir si el cliente pagará
el siguiente mes sin embargo eventualmente podría servir para imputar el nivel de
estudios ya que algunas ocupaciones tienen un nivel de estudios requeridos.
6- MARRIAGE: Es una variable categórica nominal que da información sobre el estado
civil del cliente. De manera preliminar no se consideró prudente relacionarla con la
disposición del cliente a pagar el siguiente mes, sin embargo, podría servir para
imputar la edad de los individuos ya que normalmente las personas mayores tienden
a estar casadas, divorciadas o viudas.
7- AGE: Variable categórica ordinal que señala el nivel de edad de los clientes, puede
ser relacionada con el nivel de estudios ya que se necesitan años para tener un nivel
de estudios más alto y además esto podría conllevar que se le pueda otorgar un
préstamo más alto así que eventualmente podía llegar a ser utilizada para clasificar a
los clientes por rango etario en su disposición a pagar el siguiente mes.
8- PAY_0 hasta PAY_6: Variables numéricas sin embargo representan categorías,
sobre el estado de pago y reembolso, las cuales son: -2 = Sin compromiso de pago; -
1 = Pagado debidamente; 0 = No registra pago; 1 en adelante cantidad de meses con
pago atrasado. Esta variable indica el historial de pago del cliente, y si ha estado los
meses anteriores o está atrasado en el pago de las cuotas de crédito,
9- BILL_ATM1 hasta BILL_AMT6: Variable numérica que representa el extracto de la
factura de septiembre y los montos del estado de cuenta de agosto hasta abril de
2005. Se puede especular que esta variable puede incidir en la predicción del pago
del cliente en el siguiente mes al complementarlo con otros atributos.
10- PAY_ATM1 hasta el PAY_ATM6: Variable numérica que representa el monto del
pago anterior desde septiembre hasta abril (sentido inverso), en el año 2005
11- ACC_OBANK: Variable categórica binomial que indica si el cliente tiene o no cuenta
en otro banco, de manera preliminar no se encuentra una relevancia al observar los
datos y es un atributo que el analista estima candidato a eliminar.
Página 5
12- DEF_PAY_NEXT_MONTH: Variable categórica binomial que indica si el cliente
pagará o no el me siguiente, este atributo es el Label de la base de datos
13- ID: Este atributo es una variable numérica que le asigna un valor numérico distinto a
cada cliente para poder identificarlos.
Los datos nulos son los datos faltantes en la base, por ello es imprescindible deshacerse de ellos,
el primer criterio que se utilizó respaldado en lo visto en clase fue “eliminar las filas donde el label
no existe”, esto resulta lógico ya que esta es la variable que se pretende predecir por lo tanto en
la base de datos de este proyecto, usando Excel, se eliminaron las filas con ID: 6, 5533, 5340,
dichas filas representan un 0.03% de las filas totales.
Se procedió a eliminar los atributos con más del 80% de datos faltantes, verificando las
estadísticas de la base de datos en RapidMiner se observa que el atributo ACC_OBANK tiene
8470 datos faltantes de un total de 10.000 representando un 84,7%, por lo tanto, se elimina.
A continuación, se procedió a eliminar las filas con más de un 80% de datos faltantes,
considerando que en la base de datos existen 25 atributos, las filas con más de 20 datos faltantes
se eliminaron, para realizar este procedimiento se utilizó Excel, intercambiando filas con
columnas, luego se cargó la base de datos transpuesta en RapidMiner y se para verificar los
atributos que tenían más de 20 datos nulos, el único que cumplía con este criterio es el cliente de
ID 9948, esta fila se eliminó en la base de datos original.
Página 6
ID AGE LIMIT_BAL BILL_AMT1 BILL_AMT2 BILL_AMT3 BILL_AMT4 BILL_AMT5
Desviación
estándar
9 130061 999587 69646 67741 61119 59255
Promedio 35 165876 63831 47959 45214 40439 39173
% desviación
con respecto 26% 78% 1566% 145% 150% 151% 151%
al promedio
ID BILL_AMT6 PAY_AMT1 PAY_AMT2 PAY_AMT3 PAY_AMT4 PAY_AMT5 PAY_AMT6
Desviación
estándar 58895 15460 23965 16073 14580 15220 18577
Promedio 37664 5619 5783 4537 4679 4832 5324
% desviación
con respecto 156% 275% 414% 354% 312% 315% 349%
al promedio
Es base a lo expuesto en la tabla 1 no se elimina ningún atributo ya que todos tienen una
desviación considerable con respecto a la media.
Con ayuda de la Matriz de correlación de RapidMiner se observó que los atributos mas
correlacionados son los que se muestran en la tabla 2 extraída del software.
A pesar de que estos atributos tenían una correlación no se eliminaron ya que la base de datos
presenta registros tanto de monto facturado como de monto pagado por lo tanto puede
relacionarse con otros atributos que posiblemente en el desarrollo del proyecto van a permitir
extraer un nuevo atributo.
Página 7
Los grupos son los siguientes:
Para escoger el método por el cual realizar la imputación, el criterio que se utilizó fue el siguiente,
se asignó un cliente al azar de cada grupo y se le borro un atributo por cada grupo, luego se cargó
esta base en RapidMiner y se realizó la imputación por los siguientes métodos:
Los algoritmos para realizar la imputación clasificados por grupos son los siguientes:
Página 8
Extracción de Atributos
En función de la naturaleza de la base de datos el analista decidió crear nuevos atributos, para
ello se promediaron, los atributos BILL_ATM1 hasta BILL_AMT6, obteniendo un nuevo atributo
que se denominó BILL_ATM_AVERAGE. El mismo procedimiento se realizó con los atributos
PAY_ATM1 hasta PAY_ATM6, obteniendo un segundo nuevo atributo que se denominó
PAY_ATM_AVERAGE.
Considerando que para el análisis de los datos y la creación de un modelo la información del
monto facturado promedio (BILL_ATM_AVERAGE) y la de el pago realizado promedio
(PAY_ATM_AVERAGE), entregan la misma información que los atributos que se promediaron,
se decide eliminar los atributos BILL_ATM1 hasta BILL_AMT6 y PAY_ATM1 hasta PAY_ATM6.
Los atributos PAY_0 hasta PAY_6, representan una condición del cliente, como se mencionó
anteriormente en este informe, de manera que no es correcto calcular el promedio y la desviación
estándar para determinar los datos que estén fuera de rango, de manera que posteriormente
estos atributos se trabajarán mediante una discretización.
Para realizar este procedimiento se ocupo el software Excel, donde a cada uno de los atributos
numéricos antes mencionados se le calculó la media y la desviación estándar, para
posteriormente calcular los límites superiores e inferiores de control, como 3 veces la desviación
estándar con respecto al promedio. Una vez que se tienen estos parámetros se procede a dar
formato condicional a los datos de manera de identificar los que están entre el limite superior e
inferior de control.
Como resultado se obtuvo que el atributo LIMIT_BAL tiene 46 datos fuera de rango, y los atributos
BILL_ATM_AVERAGE y PAY_ATM_AVERAGE no contienen datos fuera de rango. En función
de lo anterior y como el atributo LIMIT_BAL no contienen datos menores a 1, se decidió aplicar
“Logaritmo natural” a dicho atributo, esto se realizó en el software RapidMiner usando el operador
“Logarithm”
Página 9
También se realizó una normalización de los datos numéricos mediante una trasformación Z, con
el objetivo de disminuir el efecto de algún dato que siguiera afectando por estar fuera de rango,
para ello se utilizó el operador de RapidMiner “Normalize”.
Transformación de Datos
En este punto se pide trasformar la base de datos a una completamente categórica y otra
completamente numérica, por este motivo se explica el procedimiento realizado en ambos casos,
partiendo por la transformación de categórico a completamente numérica y finalmente la de
numérico a completamente categórica, cabe mencionar que en el punto siguiente se requiere una
base de datos completamente categórica para aplicar la metodología del estadístico Chi cuadrado
para seleccionar atributos relevantes
Atributo EDUCATION: Para este atributo de naturaleza ordinal se designaron valores enteros
dependiendo el nivel de estudio 1 = University; 2 = High School; 3 = Postgraduate; 0 = Other.
Para esta operación también se utilizó el operador de RapidMiner “Nominal to Numeric”
Atributos PAY_0 hasta PAY_6: Estos atributos representan en sus estados -2, -1 y 0 estados
de pago del cliente, posteriormente a ello los números del 1 en adelante representan la cantidad
de meses que el cliente se encuentra atrasado en el pago de la cuota, por este motivo el método
de trasformación mas adecuado es la creación de categorías que representen: -2 = No presenta
Página 10
compromiso de pago; -1 = Pagar debidamente (está dentro del plazo para pagar); 0 = No registra
pago 1 = No registra pago; de 1 en adelante = Pago retrasado. Para esta operación se utilizó el
operador de RapidMiner “Discretize by User Specification”.
Atributo LIMIT_BAL: Para este atributo que representa una cantidad de dinero entregada como
préstamo se transformo en tres categorías, Alto, Medio, Bajo. Para esta operación se utilizó el
operador de RapidMiner “Discretize by Binning”.
Atributo AGE: Este atributo representa la edad de los clientes por lo tanto puede ser tratada
mediante el operador de RapidMiner “Discretize by User Specification”, se crean tres categorías,
Adulto Joven, Adulto y Adulto mayor.
Página 11
Una medida utilizada como referencia de acuerdo con lo visto en clases es calcular el promedio
entre las ponderaciones de los valores entregados por el estadístico Chi Cuadrado, y seleccionar
los atributos cuyo valor estadístico esté por sobre el promedio, los valores entregados por el
operador de “Wheight by Chi Squared Statistic”, se muestran en la tabla 3
El valor promedio de los estadísticos Chi Cuadrado de los atributos es 344,3 por lo tanto los
atributos seleccionados para incorporar en el modelo son los que corresponden al “Historial de
Pagos Pasados”, lo cual tiene sentido lógico ya que si el cliente tiene un historial de pagos
atrasados lo mas probable es que no pague el siguiente mes. De esta manera los atributos
seleccionados para incorporar en el modelo son los siguientes:
1. PAY_0
2. PAY_2
3. PAY_3
4. PAY_4
5. PAY_5
6. PAY_6
Para filtrar estos atributos se utilizó el operador de RapidMiner, “Select by Wheights”, donde se
ingresa el valor promedio calculado anteriormente y solo pasan los atributos con un peso superior
al valor ingresado.
Página 12
Árbol de Decisión
En la imagen 1 se muestra el árbol de decisión que representa gráficamente la relación entre los
atributos y la predicción de pago según los atributos seleccionados anteriormente.
Página 13
Conclusiones
Sobre el proceso realizado se puede concluir que los resultados son lógicos de acuerdo a
lo esperado ya que los atributos que mas pesan a la hora de predecir el comportamiento de pago
del cliente en la cuota del siguiente mes son los datos de el historial de pago de meses anteriores,
de esta manera el perfil del cliente donde se incluye su ocupación, educación, sexo, entre otros
no son relevantes, por lo tanto con estos seis atributos es estadísticamente suficiente para
predecir el comportamiento.
Por otra parte, con respecto a la base de datos es posible obtener información a partir de
una metodología de análisis de datos aplicada que da como resultado que unos pocos atributos
permiten predecir mejor que todos los datos completos. Igualmente es primordial la ingerencia
que tienen el analista sobre el resultado ya que el buen desempeño del modelo depende de las
decisiones que este tome durante el proceso.
Página 14
Bibliografía y linkografía
García Herrero, J., & Molina López, J. M. (2012). TÉCNICAS DE ANÁLISIS DE DATOS. Madrid:
Universidad Carlos III de Madrid.
Página 15