Importación base de datos

library(readr)
library(dplyr)
creditos <- read_delim("creditos.txt", delim = "\t", 
                       escape_double = FALSE, trim_ws = TRUE)

Cambio de nombre a las variables

creditos %>% 
  select("INGRESOS_DECLARADOS_TOTA", "MONTO_TOTAL_OTORGADO", "SEXO", "NIVEL_ESTUDIOS", "ESTRATO") -> basen

colnames(basen) <- c("INGRESOS", "MONTO OTORGADO", "GENERO", "NIVEL DE ESTUDIOS", "ESTRATO")

Eliminación de datos faltantes, realización de attach para manejar directamente las variables y cambio de escala dividiendo todos los valores por 1000000.

basen <- basen[complete.cases(basen), ]
attach(basen)
basen$INGRESOS <- basen$INGRESOS/1000000
basen$`MONTO OTORGADO` <- basen$`MONTO OTORGADO`/1000000

Se realiza un filtro para los clientes que se les ortogó un crédito por menos de 100 millones y se descartan los clientes con ingresos superiores a 25 millones de pesos para así obtener la base de datos final.

basen %>% 
  filter(`MONTO OTORGADO` < 100 & INGRESOS < 25) -> basefin2
attach(basefin2)
## The following objects are masked from basen:
## 
##     ESTRATO, GENERO, INGRESOS, MONTO OTORGADO, NIVEL DE ESTUDIOS
head(basefin2)
## # A tibble: 6 × 5
##   INGRESOS `MONTO OTORGADO` GENERO `NIVEL DE ESTUDIOS` ESTRATO
##      <dbl>            <dbl> <chr>  <chr>                 <dbl>
## 1   13.9               70   H      PRF                       3
## 2    0.956              5.5 M      TEC                       3
## 3    2.4               31.8 H      PRF                       4
## 4    1.87              22.2 M      PRF                       3
## 5    5.13              10.5 M      UNV                       6
## 6    5                 10.5 H      BAS                       4

Análisis exploratorio de los datos

Punto 3: Frecuencia relativa género

f.gen <- table(GENERO)
TFRgen <- prop.table(f.gen)
library(knitr)
kable(TFRgen)
GENERO Freq
H 0.5871376
M 0.4128624

Punto 4 al 7

Primero lo realizaremos con hombres

Frecuencia relativa nivel educativo hombres

f.nivele <- table(`NIVEL DE ESTUDIOS`, GENERO)
TFRnivele <- prop.table(f.nivele)
kable(TFRnivele)
H M
BAS 0.0826663 0.0346545
DOC 0.0030240 0.0019567
MED 0.1231747 0.0303530
NOG 0.0291887 0.0202300
POS 0.0408804 0.0390369
PRF 0.0873397 0.0790440
TEC 0.0791410 0.0640858
UNV 0.1417229 0.1435017
TFRnivele[, "H"] -> Grafico1

Gráfico de barras nivel educativo hombres

barplot(Grafico1,xlab = "Nivel educativo", ylab = "Frecuencia", main = "Nivel educativo hombres", col="mediumpurple", border = "mediumpurple4")

Tabla de frecuencias relativas estrato hombres

f.estratoh <- table(ESTRATO, GENERO)
TFRestratoh <- prop.table(f.estratoh)
kable(TFRestratoh)
H M
0 0.0017788 0.0016494
1 0.0371448 0.0115461
2 0.1566811 0.0728828
3 0.2156730 0.1703941
4 0.0980773 0.0870163
5 0.0477530 0.0412038
6 0.0300296 0.0281699
TFRestratoh[, "H"]-> Grafico2

Gráfico de frecuencias relativas estratos hombres

barplot(Grafico2,xlab = "Estrato", ylab = "Frecuencia", main = "Estrato hombres", col="deepskyblue2", border = "deepskyblue4")

Histograma ingreso hombres

library(dplyr)
library(knitr)
histoi <- data_frame(basefin2$INGRESOS, basefin2$GENERO)
head(histoi)
## # A tibble: 6 × 2
##   `basefin2$INGRESOS` `basefin2$GENERO`
##                 <dbl> <chr>            
## 1              13.9   H                
## 2               0.956 M                
## 3               2.4   H                
## 4               1.87  M                
## 5               5.13  M                
## 6               5     H
histograma <- subset(histoi, basefin2$GENERO == "H")
head(histograma)
## # A tibble: 6 × 2
##   `basefin2$INGRESOS` `basefin2$GENERO`
##                 <dbl> <chr>            
## 1                13.9 H                
## 2                 2.4 H                
## 3                 5   H                
## 4                 1.6 H                
## 5                11   H                
## 6                11.2 H
hist(histograma$`basefin2$INGRESOS`, main = "Histograma", col = "lightblue", 
     xlab = "INGRESO", ylab = "GENERO", xlim = c(0,60))

Diagrama de caja ingreso de hombres

boxplot(histograma$`basefin2$INGRESOS`, main = "Diagrama de Caja y Bigotes", col = "lightgreen", horizontal = T, notch = T)

Ahora lo hacemos con mujeres

Frecuencia relativa nivel educativo mujeres

f.nivele2 <- table(`NIVEL DE ESTUDIOS`, GENERO)
TFRnivele2 <- prop.table(f.nivele)
kable(TFRnivele2)
H M
BAS 0.0826663 0.0346545
DOC 0.0030240 0.0019567
MED 0.1231747 0.0303530
NOG 0.0291887 0.0202300
POS 0.0408804 0.0390369
PRF 0.0873397 0.0790440
TEC 0.0791410 0.0640858
UNV 0.1417229 0.1435017
TFRnivele2[, "M"] -> Grafico3

Gráfico de barras nivel educativo mujeres

barplot(Grafico3,xlab = "Nivel educativo", ylab = "Frecuencia", main = "Nivel educativo mujeres", col="mediumpurple", border = "mediumpurple4")

Tabla de frecuencias relativas estrato mujeres

f.estratoM <- table(ESTRATO, GENERO)
TFRestratoM <- prop.table(f.estratoM)
kable(TFRestratoM)
H M
0 0.0017788 0.0016494
1 0.0371448 0.0115461
2 0.1566811 0.0728828
3 0.2156730 0.1703941
4 0.0980773 0.0870163
5 0.0477530 0.0412038
6 0.0300296 0.0281699
TFRestratoM[, "M"]-> Grafico4

Gráfico de frecuencias relativas estratos mujeres

barplot(Grafico4,xlab = "Estrato", ylab = "Frecuencia", main = "Estrato mujeres", col="deepskyblue2", border = "deepskyblue4")

Histograma ingreso mujeres

histoi2 <- data_frame(basefin2$INGRESOS, basefin2$GENERO)
head(histoi2)
## # A tibble: 6 × 2
##   `basefin2$INGRESOS` `basefin2$GENERO`
##                 <dbl> <chr>            
## 1              13.9   H                
## 2               0.956 M                
## 3               2.4   H                
## 4               1.87  M                
## 5               5.13  M                
## 6               5     H
histograma2 <- subset(histoi2, basefin2$GENERO == "M")
head(histograma2) 
## # A tibble: 6 × 2
##   `basefin2$INGRESOS` `basefin2$GENERO`
##                 <dbl> <chr>            
## 1               0.956 M                
## 2               1.87  M                
## 3               5.13  M                
## 4               7.02  M                
## 5               2.21  M                
## 6               3.25  M
hist(histograma2$`basefin2$INGRESOS`, main = "Histograma", col = "lightblue", 
     xlab = "INGRESO", ylab = "GENERO", xlim = c(0,60))

Diagrama de caja ingreso de mujeres

boxplot(histograma2$`basefin2$INGRESOS`, main = "Diagrama de Caja y Bigotes", col = "lightgreen", horizontal = T, notch = T)

Punto 8

Medida Hombres Mujeres
Mínimo 0.003283 0.01648
Máximo 24.934800 24.99055
Cuartíl 1 1.510842 1.39535
Mediana 2.258168 2.32944
Cuartíl 3 5.000000 4.86052
Media 4.312179 3.99236
Rango 24.93152 24.97407
Rango Intercuartilico 3.489158 3.465202
Desv. Estándar 4.726008 4.219308
Coef. Variación 1.095967 1.056845
Indice Yule-Bowley -1.27508 -1.251473
Coef. Asim. Fisher 2.08695 2.183608

Punto 9

  • Al hacer la comparación del nivel eduactivo, se puede observar que los hombres están mucho más preparados que las mujeres en cuanto a todos los niveles, por ejemplo el 14% de hombres tienen un título universitario mientras que el 12% de mujeres obiene uno de estos. Pero en donde más se nota la diferencia es en el título de bachiller, donde el 9,8% de hombres obtienen uno y el 2,5% de mujeres finalizan su bachiller.
  • En cuanto al estrato se puede ver una diferencia entre hombres y mujeres; si observamos el estrato 0, podemos ver que el 0,14% de mujeres viven ahí; en cambio en los hombres se evidencia un procentaje más alto, con 0,16%. Pero, si observamos el estrato 6 hay mas hombres que mujeres que viven en este, con un 9,7% en los hombres y un 4,7%.
  • Por último, en los ingresos también existe una brecha, teniendo los hombres salarios más altos que las mujeres. Analizando el diagrama de cajas y bigotes se puede observar que en el cuartil 3 los hombres se encuentral con un salario de 5 millones, por otro lado, las mujeres tienen un salario de aproximadamente 4800000.

Cálculo de probabilidades

Punto 10: Se realiza la siguiente clasificación: menos de 1 SMMLV, entre 1 y 3 SMMLV, entre 3 y 5 SMMLV, entre 5 y 10 SMMLV, más de 10 SMMLV.

c2 = cut(x = basefin2$INGRESOS, breaks = c(0,1,3,5,10,30) , labels = c("menos de 1 SMMLV", "entre 1 y 3 SMMLV", "entre 3 y 5 SMMLV", "entre 5 y 10 SMMLV", "más de 10 SMMLV"), include.lowest = TRUE, right = FALSE,)

Punto 11: Tabla bidimensional de frecuencias relativas para ingreso y diagrama de barras compuesto.

c3 = table(c2, basefin2$GENERO)
kable(c3)
H M
menos de 1 SMMLV 3543 3368
entre 1 y 3 SMMLV 18727 11819
entre 3 y 5 SMMLV 4738 4098
entre 5 y 10 SMMLV 4913 3729
más de 10 SMMLV 4387 2517
t2 = prop.table(c3)
round(prop.table(x = t2, margin = 1), 2) -> t3
kable(t3)
H M
menos de 1 SMMLV 0.51 0.49
entre 1 y 3 SMMLV 0.61 0.39
entre 3 y 5 SMMLV 0.54 0.46
entre 5 y 10 SMMLV 0.57 0.43
más de 10 SMMLV 0.64 0.36
barplot(t3, legend = TRUE, beside = TRUE, horiz = FALSE,
        main = "Ingreso",
        xlab = "Género", 
        col =  "orchid3", 
        ylim = c(0,0.9))

Punto 12

Según la gráfica se puede ver una gran diferencia entre hombres y mujeres en cuanto la clasificación “entre 1 y 3 SMMLV” donde hay más cantidad de hombres que estan en este intervalo, otra gran diferencia es en cuanto a “más de 10 SMMLV” donde nuevamente se ven que hay más cantidad de hombres que pertenecen a este grupo que mujeres.

Teorema de bayes

summary(basefin2$INGRESOS)
##      Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
##  0.003283  1.470000  2.284567  4.180136  5.000000 24.990554
bayes = cut(x = basefin2$INGRESOS, breaks = 4, labels = c("H1", "H2", "H3", "H4"), include.lowest = TRUE, right = FALSE,)
by1 = table(bayes, basefin2$GENERO)

Punto 13: Por definición, se tiene que Pr[H1]=Pr[H2]=Pr[H3]=Pr[H4]=0.25. ¿Por qué?

Porque son resultados que tienen la misma pobabilidad de que ocurran, entonces la probabilidad de que suceda cada evento es de 1/4 es decir 0,25.

Punto 14: Observe que H1, H2, H3 y H4 son una partición del espacio muestral. ¿Por qué?

Son una partición del espacio muestral porque todos son los posibles resultados del experimento.

Punto 15: Sea E el evento “el cliente tiene educación universitaria”. Usando la base de datos, calcular e interpretar las siguientes probabilidades: Pr[E|H1], Pr[E|H2], Pr[E|H3] y Pr[E|H4]. ¿Estas probabilidades deben sumar 1? ¿Por qué?

ET <- data_frame(basefin2$INGRESOS, basefin2$`NIVEL DE ESTUDIOS`)
= cut(x = basefin2$INGRESOS, breaks = c(0.003283, 1.4700, 2.284567, 5.00000, 24.990554), labels = c("H1", "H2", "H3", "H4"), include.lowest = TRUE, right = FALSE,)
PN2 = table(basefin2$`NIVEL DE ESTUDIOS`,PÑ)

kable(PN2)
H1 H2 H3 H4
BAS 4403 1551 784 517
DOC 8 7 58 235
MED 3394 4161 1485 454
NOG 811 1018 654 573
POS 104 549 1653 2636
PRF 347 865 2954 6123
TEC 3934 3040 1548 335
UNV 2449 4277 6239 4673
prop.table(PN2) -> PN3
round(prop.table(x = PN3, margin = 2), 2) -> PN4
kable(PN4)
H1 H2 H3 H4
BAS 0.28 0.10 0.05 0.03
DOC 0.00 0.00 0.00 0.02
MED 0.22 0.27 0.10 0.03
NOG 0.05 0.07 0.04 0.04
POS 0.01 0.04 0.11 0.17
PRF 0.02 0.06 0.19 0.39
TEC 0.25 0.20 0.10 0.02
UNV 0.16 0.28 0.41 0.30

Deben sumar 1 porque son todos los posibles resultados del evento “el cliente tiene educación universitaria” dado la clasificación de ingresos en la que se encuetren

Punto 16: Considere la distribución de los ingresos de las personas con educación universitaria. Usando el teorema de Bayes, calcular e interpretar las siguientes probabilidades: Pr[H1|E], Pr[H2|E], Pr[H3|E] y Pr[H4|E]. ¿Estas probabilidades deben sumar 1? ¿Por qué? Observe que las probabilidades Pr[H1|E], Pr[H2|E], Pr[H3|E] y Pr[H4|E] difieren marcadamente de Pr[H1], Pr[H2], Pr[H3] y Pr[H4], respectivamente. ¿Por qué?

round(prop.table(x = PN3, margin = 1), 2) -> PN5
kable(PN5)
H1 H2 H3 H4
BAS 0.61 0.21 0.11 0.07
DOC 0.03 0.02 0.19 0.76
MED 0.36 0.44 0.16 0.05
NOG 0.27 0.33 0.21 0.19
POS 0.02 0.11 0.33 0.53
PRF 0.03 0.08 0.29 0.60
TEC 0.44 0.34 0.17 0.04
UNV 0.14 0.24 0.35 0.26
  • Deben sumar 1 porque son todos los posibles resultados del experimiento la clasificación de ingresos en la que se encunetre el cliente dado que tiene educación universitaria
  • Esas probabilidades difieren porque unas son probablidades condicionadas a un evento y las otras son las probabilidades de que ocurra algún resultado del espacio muestral.