Uno de los análisis extra que decidimos hacer está relacionado con los préstamos, es decir saber qué porcentaje de la población pide y cuántos no lo hacen. De quienes no piden préstamo, saber por qué no lo hacen.
El primer paso consistió en cargar librerías, cargar el dataset, cambiar tipo de datos y nombres.
library(dplyr)
library(haven)
library(ggplot2)
library(corrplot)
library(RColorBrewer)
encovi.prestamos <- read_sav("~/Data Science/ENCOVI/prestamos.sav")
prestamo <- encovi.prestamos %>% select(DEPTO, AREA, POBREZA, P15A01, P15A02)
names(prestamo) <- c("Departamento", "Area", "Pobreza", "Solicito.Prestamo", "No.Solicito")
prestamo$No.Solicito[is.nan(prestamo$No.Solicito)] <- 0
prestamo <-prestamo[complete.cases(prestamo),]
prestamo$Departamento <- as.factor(prestamo$Departamento)
prestamo$Area <- as.factor(prestamo$Area)
prestamo$Pobreza <- as.factor(prestamo$Pobreza)
prestamo$Solicito.Prestamo <- as.character(prestamo$Solicito.Prestamo)
prestamo$No.Solicito <- as.character(prestamo$No.Solicito)
levels(prestamo$Departamento)<- c("Guatemala", "El Progreso", "Sacatepequez", "Chimaltenango", "Escuintla", "Santa Rosa", "Solola", "Totonicapan", "Quetzaltenango", "Suchitepequez", "Retalhuleu", "San Marcos", "Huehuetenango", "Quiche", "Baja Verapaz", "Alta Verapaz", "Peten", "Izabal", "Zacapa", "Chiquimula", "Jalapa", "Jutiapa")
levels(prestamo$Area)<- c("Urbana", "Rural")
levels(prestamo$Pobreza) <- c ("Pobre extremo", "Pobre no extremo", "No pobre")
head(prestamo)
Luego se prosiguió a crear una tabla que muestra los porcentajes por personas que solicitaron préstamo y de quienes no solicitaron préstamo.
prestamototal <- prestamo %>%
summarise(SolicitoPrestamo = sum(ifelse(Solicito.Prestamo==1,1,0))/n()*100, NoSolicitoPrestamo = sum(ifelse(Solicito.Prestamo==2,1,0))/n()*100)
prestamototal
prestamoarea <- prestamo %>%
group_by(Area) %>%
summarise(SolicitoPrestamo = sum(ifelse(Solicito.Prestamo==1,1,0))/n()*100, NoSolicitoPrestamo = sum(ifelse(Solicito.Prestamo==2,1,0))/n()*100)
prestamoarea
prestamopobreza <- prestamo %>%
group_by(Pobreza) %>%
summarise(SolicitoPrestamo = sum(ifelse(Solicito.Prestamo==1,1,0))/n()*100, NoSolicitoPrestamo = sum(ifelse(Solicito.Prestamo==2,1,0))/n()*100)
prestamopobreza
Dado que a partir de las tablas se ve que no hay costumbre de pedir préstamo se decidió analizar por que esto pasaba.
razontotal <- prestamo %>%
summarise(NoLeGusta = sum(ifelse(No.Solicito == 1,1,0))/n()*100, NoLeDan = sum(ifelse(No.Solicito==2,1,0))/n()*100, NoNecesita=sum(ifelse(No.Solicito==3,1,0))/n()*100, YaTiene=sum(ifelse(No.Solicito==4,1,0))/n()*100, Otro=sum(ifelse(No.Solicito==98,1,0))/n()*100)
razontotal
razonarea <- prestamo %>%
group_by(Area) %>%
summarise(NoLeGusta = sum(ifelse(No.Solicito == 1,1,0))/n()*100, NoLeDan = sum(ifelse(No.Solicito==2,1,0))/n()*100, NoNecesita=sum(ifelse(No.Solicito==3,1,0))/n()*100, YaTiene=sum(ifelse(No.Solicito==4,1,0))/n()*100, Otro=sum(ifelse(No.Solicito==98,1,0))/n()*100)
razonarea
razonpobreza <- prestamo %>%
group_by(Pobreza) %>%
summarise(NoLeGusta = sum(ifelse(No.Solicito == 1,1,0))/n()*100, NoLeDan = sum(ifelse(No.Solicito==2,1,0))/n()*100, NoNecesita=sum(ifelse(No.Solicito==3,1,0))/n()*100, YaTiene=sum(ifelse(No.Solicito==4,1,0))/n()*100, Otro=sum(ifelse(No.Solicito==98,1,0))/n()*100)
razonpobreza
razondep <- prestamo %>%
group_by(Departamento) %>%
summarise(NoLeGusta = sum(ifelse(No.Solicito == 1,1,0))/n()*100, NoLeDan = sum(ifelse(No.Solicito==2,1,0))/n()*100, NoNecesita=sum(ifelse(No.Solicito==3,1,0))/n()*100, YaTiene=sum(ifelse(No.Solicito==4,1,0))/n()*100, Otro=sum(ifelse(No.Solicito==98,1,0))/n()*100)
razondep
En la tabla generada anteriormente se puede observar que la mayoría de los guatemaltecos viven en casas formales y luego el segundo gran grupo vive en casa improvisada. Con el fin de obtener algunas estadísticas, se decidió sacar los promedios, medianas y valores máximos y mínimos de los datos.
summary(prestamoarea)
Area SolicitoPrestamo NoSolicitoPrestamo
Urbana:1 Min. :11.05 Min. :87.39
Rural :1 1st Qu.:11.44 1st Qu.:87.78
Median :11.83 Median :88.17
Mean :11.83 Mean :88.17
3rd Qu.:12.22 3rd Qu.:88.56
Max. :12.61 Max. :88.95
str(razondep)
Classes tbl_df, tbl and 'data.frame': 22 obs. of 6 variables:
$ Departamento: Factor w/ 22 levels "Guatemala","El Progreso",..: 1 2 3 4 5 6 7 8 9 10 ...
$ NoLeGusta : num 37.3 30.5 26.6 30.6 34.1 ...
$ NoLeDan : num 16.9 17.7 20.5 13.2 24.5 ...
$ NoNecesita : num 30.8 36.2 34 32.3 29.4 ...
$ YaTiene : num 1.813 1.235 1.299 3.824 0.817 ...
$ Otro : num 4.29 5.97 7.2 6.69 2.45 ...
Gráfica sobre pedir préstamo por pobreza
grafica_pob <- prestamopobreza %>% gather(SolicitaPrestamo, Porcentaje, -Pobreza)
ggplot(data=grafica_pob, aes(x=Pobreza, y=Porcentaje, fill=SolicitaPrestamo)) + geom_bar(stat="identity", position="stack") + labs(title="Solicitud de Préstamo por nivel de pobreza")
Gráfica sobre las razones por las que la gente no solicita préstamo por departamento.
graf_dep <- razondep %>% gather(Razon, Cantidad, -Departamento)
graf_dep$Razon <- factor(graf_dep$Razon)
graf_dep$Cantidad <- as.numeric(graf_dep$Cantidad) / 100
graf_dep %>% ggplot(aes(Departamento, Cantidad)) +
geom_col(aes(fill = Razon, group = Razon), position = "nudge") +
theme(axis.text.x = element_text(angle = 90)) +
labs(title="Razones por las que la gente no solicita préstamo")