library(tidyverse)
creditos <- read_csv(file = "Colocaciones_de_cr_dito_Sector_Agropecuario_2020.csv")
head(creditos)
range(creditos$Colocacion)
## [1] 9e+00 2e+11
quantile(creditos$Colocacion)
## 0% 25% 50% 75% 100%
## 9 3000000 6764947 12970000 200000000000
quantile(creditos$Colocacion, probs = seq(0, 1, 0.1))
## 0% 10% 20% 30% 40% 50%
## 9 1745112 2700000 3569776 5000000 6764947
## 60% 70% 80% 90% 100%
## 9000000 11000000 15000000 27000000 200000000000
quantile(creditos$Colocacion, probs = seq(0, 1, 0.01))
## 0% 1% 2% 3% 4% 5%
## 9.000000e+00 6.000000e+05 7.996057e+05 1.000000e+06 1.054000e+06 1.106062e+06
## 6% 7% 8% 9% 10% 11%
## 1.237195e+06 1.400000e+06 1.500000e+06 1.600000e+06 1.745112e+06 1.900000e+06
## 12% 13% 14% 15% 16% 17%
## 2.000000e+06 2.000000e+06 2.094911e+06 2.187500e+06 2.252055e+06 2.400000e+06
## 18% 19% 20% 21% 22% 23%
## 2.500000e+06 2.550000e+06 2.700000e+06 2.800000e+06 2.980237e+06 3.000000e+06
## 24% 25% 26% 27% 28% 29%
## 3.000000e+06 3.000000e+06 3.130106e+06 3.200000e+06 3.340000e+06 3.500000e+06
## 30% 31% 32% 33% 34% 35%
## 3.569776e+06 3.750000e+06 4.000000e+06 4.000000e+06 4.000000e+06 4.206569e+06
## 36% 37% 38% 39% 40% 41%
## 4.500000e+06 4.747195e+06 5.000000e+06 5.000000e+06 5.000000e+06 5.000000e+06
## 42% 43% 44% 45% 46% 47%
## 5.191273e+06 5.500000e+06 5.750000e+06 6.000000e+06 6.000000e+06 6.000000e+06
## 48% 49% 50% 51% 52% 53%
## 6.000000e+06 6.407854e+06 6.764947e+06 7.000000e+06 7.000000e+06 7.291073e+06
## 54% 55% 56% 57% 58% 59%
## 7.688012e+06 8.000000e+06 8.000000e+06 8.000000e+06 8.294869e+06 8.700000e+06
## 60% 61% 62% 63% 64% 65%
## 9.000000e+06 9.570063e+06 1.000000e+07 1.000000e+07 1.000000e+07 1.000000e+07
## 66% 67% 68% 69% 70% 71%
## 1.000000e+07 1.000000e+07 1.000000e+07 1.050000e+07 1.100000e+07 1.199904e+07
## 72% 73% 74% 75% 76% 77%
## 1.200000e+07 1.200000e+07 1.200000e+07 1.297000e+07 1.374771e+07 1.423947e+07
## 78% 79% 80% 81% 82% 83%
## 1.500000e+07 1.500000e+07 1.500000e+07 1.500000e+07 1.600000e+07 1.700000e+07
## 84% 85% 86% 87% 88% 89%
## 1.800000e+07 2.000000e+07 2.000000e+07 2.000000e+07 2.142000e+07 2.500000e+07
## 90% 91% 92% 93% 94% 95%
## 2.700000e+07 3.000000e+07 3.500000e+07 4.000000e+07 5.000000e+07 6.500000e+07
## 96% 97% 98% 99% 100%
## 9.278933e+07 1.266968e+08 2.042265e+08 5.000000e+08 2.000000e+11
creditos %>%
filter(Colocacion > 5000000000)
creditos %>%
filter(Colocacion > 10000000000)
creditos %>%
filter(Colocacion > 100000000000)
library(janitor)
library(Hmisc)
creditos2 <- creditos %>%
clean_names() %>%
select(mes,
fuente = fuente_colocacion,
productor = tipo_productor,
colocacion,
postconf = municipio_de_post_conflico,
depto = departamento_de_colocacion_de_credito,
municipio = municipio_colocacion_de_credito,
plazo,
linea_credito = linea_de_credito,
linea_prod = linea_de_produccion,
destino = destino_de_credito,
genero) %>%
mutate(fuente = capitalize(tolower(fuente)),
productor = capitalize(tolower(productor)),
depto = capitalize(tolower(depto)),
municipio = capitalize(tolower(municipio)),
linea_prod = capitalize(tolower(linea_prod)),
destino = capitalize(tolower(destino)),
genero = capitalize(tolower(genero)),
mes = factor(mes,
labels = c("Enero", "Febrero", "Marzo", "Abril",
"Mayo", "Junio", "Julio", "Agosto",
"Septiembre")),
postconf = factor(postconf,
labels = c("No", "Si")),
depto = factor(depto,
labels = c("Amazonas", "Antioquia", "Arauca", "Atlántico",
"Bogotá D.C.", "Bolívar", "Boyacá", "Caldas",
"Caquetá", "Casanare", "Cauca", "Cesar",
"Chocó", "Córdoba", "Cundinamarca", "Guainía",
"La Guajira", "Guaviare", "Huila", "Magdalena",
"Meta", "Nariño", "Norte de Santander",
"Putumayo", "Quindío", "Risaralda",
"San Andrés y Providencia", "Santander",
"Sucre", "Tolima", "Valle del Cauca",
"Vaupés", "Vichada")),
linea_prod = factor(linea_prod,
labels = c("Actividades rurales", "Actividades rurales",
"Comercialización", "Comercialización",
"Compra de animales", "Consolidación de pasivos",
"Infraestructura y tierras", "Maquinaria y equipo",
"Microcrédito", "Otras actividades", "Producción",
"Servicios de apoyo", "Servicios de apoyo",
"Servicios de apoyo", "Siembras", "Sostenimiento")),
genero = factor(genero,
labels = c("Hombre", "Hombre", "Mujer", "Mujer", "No aplica",
"No informado", "P. Jurídica", "Sociedad")),
fuente = as.factor(fuente),
productor = factor(productor,
levels = c("Pequeño", "Mediano", "Grande")),
municipio = as.factor(municipio),
linea_credito = as.factor(linea_credito),
destino = as.factor(destino)) %>%
filter(colocacion >= 600000) %>%
filter(colocacion <= 10000000000)
save(creditos2, file = "creditosFinal.Rdata")
load("creditosFinal.Rdata")
head(creditos2)
table(creditos2$productor)
##
## Pequeño Mediano Grande
## 303904 42926 8777
prop.table(table(creditos2$productor))
##
## Pequeño Mediano Grande
## 0.85460635 0.12071191 0.02468174
creditos2 %>%
group_by(productor) %>%
count()
creditos2 %>%
group_by(productor) %>%
summarise(total_dinero = sum(colocacion) / 1000000)
creditos2 %>%
filter(genero %in% c("Hombre", "Mujer")) %>%
group_by(productor, genero) %>%
summarise(promedio_dinero = mean(colocacion),
promedio_plazo = mean(plazo),
total_creditos = n())
creditos2 %>%
filter(genero %in% c("Hombre", "Mujer")) %>%
group_by(genero, postconf) %>%
summarise(total_dinero = sum(colocacion) / 1000000,
total_creditos = n())
creditos2 %>%
group_by(municipio) %>%
summarise(total_dinero = sum(colocacion) / 1000000) %>%
ungroup() %>%
arrange(desc(total_dinero)) %>%
slice(1:10)
creditos2 %>%
filter(genero %in% c("Hombre", "Mujer", "P. Jurídica", "Sociedad")) %>%
group_by(genero) %>%
summarise(minimo = min(colocacion) / 1000000,
maximo = max(colocacion) / 1000000,
promedio = mean(colocacion) / 1000000,
mediana = median(colocacion) / 1000000,
desviacion = sd(colocacion) / 1000000,
CV = (desviacion / promedio) * 100,
p75 = quantile(colocacion, probs = 0.75) / 1000000,
total_creditos = n())
library(DT)
creditos2 %>%
group_by(depto) %>%
summarise(minimo = min(colocacion) / 1000000,
maximo = max(colocacion) / 1000000,
promedio = mean(colocacion) / 1000000,
mediana = median(colocacion) / 1000000,
desviacion = sd(colocacion) / 1000000,
CV = (desviacion / promedio) * 100,
p75 = quantile(colocacion, probs = 0.75) / 1000000,
total_creditos = n()) %>%
datatable(rownames = FALSE,
options = list(scrollX = TRUE))
summary(creditos2)
## mes fuente productor colocacion
## Septiembre:93971 Agropecuaria: 2122 Pequeño:303904 Min. :6.000e+05
## Agosto :45064 Redescuento :286333 Mediano: 42926 1st Qu.:3.100e+06
## Julio :39124 Sustituta : 67152 Grande : 8777 Median :6.999e+06
## Febrero :35333 Mean :3.385e+07
## Enero :34698 3rd Qu.:1.300e+07
## Marzo :32967 Max. :1.000e+10
## (Other) :74450
## postconf depto municipio
## No:251506 Boyacá : 40232 Santafe de bogota d.c.: 6195
## Si:104101 Antioquia : 38395 Pasto : 4603
## Cundinamarca: 36701 Pitalito : 3961
## Nariño : 33501 Tunja : 3772
## Huila : 26369 Medellin : 3707
## Santander : 23950 Ipiales : 3652
## (Other) :156459 (Other) :329717
## plazo linea_credito
## Min. : 0.00 Capital de Trabajo :160142
## 1st Qu.: 17.00 Inversión :101994
## Median : 36.00 Normalización de Cartera: 93471
## Mean : 40.53
## 3rd Qu.: 60.00
## Max. :218.00
##
## linea_prod
## Sostenimiento :98661
## Compra de animales :75276
## Siembras :74399
## Microcrédito :42312
## Producción :21911
## Infraestructura y tierras:15969
## (Other) :27079
## destino
## Capital de trabajo unidad prod campesina : 29588
## 160000 capital de trabajo - unidad productiva campesina : 28119
## Capital de trabajo microcredito rural : 24757
## 253400 vientres bovinos comreciales cría y d. p. - comercial - compra - hembra: 20132
## 165000 capital de trabajo - microcrédito agropecuario y rural : 17555
## Vientres bovinos cria y doble proposito : 14490
## (Other) :220966
## genero
## Hombre :223945
## Mujer :118269
## No aplica : 295
## No informado: 207
## P. Jurídica : 9293
## Sociedad : 3598
##
library(skimr)
skim(creditos2)
Name | creditos2 |
Number of rows | 355607 |
Number of columns | 12 |
_______________________ | |
Column type frequency: | |
factor | 10 |
numeric | 2 |
________________________ | |
Group variables | None |
Variable type: factor
skim_variable | n_missing | complete_rate | ordered | n_unique | top_counts |
---|---|---|---|---|---|
mes | 0 | 1 | FALSE | 9 | Sep: 93971, Ago: 45064, Jul: 39124, Feb: 35333 |
fuente | 0 | 1 | FALSE | 3 | Red: 286333, Sus: 67152, Agr: 2122 |
productor | 0 | 1 | FALSE | 3 | Peq: 303904, Med: 42926, Gra: 8777 |
postconf | 0 | 1 | FALSE | 2 | No: 251506, Si: 104101 |
depto | 0 | 1 | FALSE | 33 | Boy: 40232, Ant: 38395, Cun: 36701, Nar: 33501 |
municipio | 0 | 1 | FALSE | 770 | San: 6195, Pas: 4603, Pit: 3961, Tun: 3772 |
linea_credito | 0 | 1 | FALSE | 3 | Cap: 160142, Inv: 101994, Nor: 93471 |
linea_prod | 0 | 1 | FALSE | 12 | Sos: 98661, Com: 75276, Sie: 74399, Mic: 42312 |
destino | 0 | 1 | FALSE | 756 | Cap: 29588, 160: 28119, Cap: 24757, 253: 20132 |
genero | 0 | 1 | FALSE | 6 | Hom: 223945, Muj: 118269, P. : 9293, Soc: 3598 |
Variable type: numeric
skim_variable | n_missing | complete_rate | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
---|---|---|---|---|---|---|---|---|---|---|
colocacion | 0 | 1 | 33849204.66 | 257213486.14 | 6e+05 | 3100000 | 6999139 | 1.3e+07 | 1.00e+10 | ▇▁▁▁▁ |
plazo | 0 | 1 | 40.53 | 29.98 | 0e+00 | 17 | 36 | 6.0e+01 | 2.18e+02 | ▇▃▁▁▁ |
creditos_deptos <- creditos2 %>%
group_by(depto) %>%
summarise(total_rubro = sum(colocacion),
promedio_rubro = mean(colocacion),
promedio_plazo = mean(plazo)) %>%
ungroup()
creditos_deptos
library(readxl)
library(janitor)
desempleo <- read_excel("desempleo.xlsx") %>%
clean_names() %>%
rename(depto = dominio)
desempleo
creditos_empleo <- inner_join(x = creditos_deptos, y = desempleo, by = "depto")
creditos_empleo
ejemplo <- left_join(x = creditos_deptos, y = desempleo, by = "depto")
ejemplo
cor(creditos_empleo$to, creditos_empleo$total_rubro)
## [1] 0.3672535