Consultas
Consulta 1
- ¿Qué tipo de productor presenta mayor número (frecuencia absoluta) de créditos)?
table(creditos2$productor)
##
## Pequeño Mediano Grande
## 303788 42852 8744
- ¿Cuál es la frecuencia relativa de los créditos por productor?
prop.table(table(creditos2$productor))
##
## Pequeño Mediano Grande
## 0.85481620 0.12057943 0.02460437
- Las frecuencias absolutas también pueden ser obtendias a través de la función count(). Por defecto el nombre que le da a la variable que tiene los conteos es “n”, no obstante, se puede cambiar con el argumento “name”:
library(tidyverse)
creditos2 %>%
group_by(productor) %>%
count(name = "total_creditos") %>%
ungroup() %>%
mutate(total = sum(total_creditos),
prop = (total_creditos / total) * 100)
- Otra forma de obtener las frecuencias absolutas y relativas es la siguiente:
creditos2 %>%
group_by(productor) %>%
count(name = "total_creditos") %>%
ungroup() %>%
mutate(prop = total_creditos / nrow(creditos2))
Consulta 2
- ¿Cuál es el rubro total y promedio de colocación de créditos por tipo de productor?
creditos2 %>%
group_by(productor) %>%
summarise(numero_creditos = n(),
total_dinero = sum(colocacion) / 1000000,
promedio_dinero = mean(colocacion) / 1000000)
Consulta 3
- ¿Cuál es el rubro total y promedio de colocación de créditos por tipo de productor y género?
creditos2 %>%
filter(!genero %in% c("No informado", "No aplica")) %>%
group_by(productor, genero) %>%
summarise(numero_creditos = n(),
total_dinero = sum(colocacion) / 1000000,
promedio_dinero = mean(colocacion) / 1000000)
Consulta 4
- ¿Cuál es el promedio de plazos y rubro en el departamento de Antioquia, por género (sólo hombres y mujeres) y tipo de productor?
creditos2 %>%
filter(depto == "Antioquia") %>%
filter(genero %in% c("Hombre", "Mujer")) %>%
group_by(productor, genero) %>%
summarise(promedio_dinero = mean(colocacion) / 1000000,
promedio_plazo = mean(plazo))
Consulta 5
- Obtener una tabla con resumen descriptivo por género (sólo hombres y mujeres) y productor en los departamentos de Antioquia, Valle del Cauca y Atlántico. La tabla estará orientada al monto de créditos y al plazo de los mismos. Conformar la tabla con los siguientes estadísticos descriptivos:
- Mínimo
- Máximo
- Promedio
- Mediana
- Desviación estándar
- Coeficiente de variación = (Desviación estándar / promedio) * 100
- Percentil 75
- Número de créditos (n)
- Participación o porcentaje de créditos por departamento
library(DT)
creditos2 %>%
filter(genero %in% c("Hombre", "Mujer")) %>%
filter(depto %in% c("Antioquia", "Atlántico", "Valle del Cauca")) %>%
group_by(depto, productor, genero) %>%
summarise(minimo_dinero = min(colocacion),
minimo_plazo = min(plazo),
maximo_dinero = max(colocacion) / 1000000,
maximo_plazo = max(plazo),
promedio_dinero = mean(colocacion) / 1000000,
promedio_plazo = mean(plazo),
desv_dinero = sd(colocacion) / 1000000,
desv_plazo = sd(plazo),
CV_dinero = (desv_dinero / promedio_dinero) * 100,
CV_plazo = (desv_plazo / promedio_plazo) * 100,
p75_dinero = quantile(colocacion, probs = 0.75),
p75_plazo = quantile(plazo, probs = 0.75),
N = n()) %>%
ungroup() %>%
group_by(depto) %>%
mutate(total_creditos = sum(N)) %>%
ungroup() %>%
mutate(proporcion = N / total_creditos) %>%
datatable(rownames = FALSE,
options = list(scrollX = TRUE))
Resumen descriptivo rápido
- R posee la función summary() que permite resumir objetos.
summary(creditos2)
## mes fuente productor colocacion
## Septiembre:93940 Agropecuaria: 2122 Pequeño:303788 Min. :6.001e+05
## Agosto :45040 Redescuento :286302 Mediano: 42852 1st Qu.:3.100e+06
## Julio :39102 Sustituta : 66960 Grande : 8744 Median :6.999e+06
## Febrero :35292 Mean :3.300e+07
## Enero :34671 3rd Qu.:1.300e+07
## Marzo :32929 Max. :9.999e+09
## (Other) :74410
## postconf depto municipio
## No:251320 Boyacá : 40219 Santafe de bogota d.c.: 6177
## Si:104064 Antioquia : 38371 Pasto : 4601
## Cundinamarca: 36684 Pitalito : 3957
## Nariño : 33492 Tunja : 3770
## Huila : 26347 Medellin : 3705
## Santander : 23934 Ipiales : 3649
## (Other) :156337 (Other) :329525
## plazo linea_credito
## Min. : 0.00 Capital de Trabajo :159961
## 1st Qu.: 17.00 Inversión :101985
## Median : 36.00 Normalización de Cartera: 93438
## Mean : 40.55
## 3rd Qu.: 60.00
## Max. :218.00
##
## linea_prod
## Sostenimiento :98549
## Compra de animales :75258
## Siembras :74391
## Microcrédito :42275
## Producción :21893
## Infraestructura y tierras:15968
## (Other) :27050
## destino
## Capital de trabajo unidad prod campesina : 29583
## 160000 capital de trabajo - unidad productiva campesina : 28113
## Capital de trabajo microcredito rural : 24735
## 253400 vientres bovinos comreciales cría y d. p. - comercial - compra - hembra: 20126
## 165000 capital de trabajo - microcrédito agropecuario y rural : 17540
## Vientres bovinos cria y doble proposito : 14490
## (Other) :220797
## genero
## Hombre :223807
## Mujer :118219
## No aplica : 293
## No informado: 207
## P. Jurídica : 9271
## Sociedad : 3587
##
- Un resumen más completo puede ser obtenido con la biblioteca skimr:
library(skimr)
skim(creditos2)
Data summary
Name |
creditos2 |
Number of rows |
355384 |
Number of columns |
12 |
_______________________ |
|
Column type frequency: |
|
factor |
10 |
numeric |
2 |
________________________ |
|
Group variables |
None |
Variable type: factor
mes |
0 |
1 |
FALSE |
9 |
Sep: 93940, Ago: 45040, Jul: 39102, Feb: 35292 |
fuente |
0 |
1 |
FALSE |
3 |
Red: 286302, Sus: 66960, Agr: 2122 |
productor |
0 |
1 |
FALSE |
3 |
Peq: 303788, Med: 42852, Gra: 8744 |
postconf |
0 |
1 |
FALSE |
2 |
No: 251320, Si: 104064 |
depto |
0 |
1 |
FALSE |
33 |
Boy: 40219, Ant: 38371, Cun: 36684, Nar: 33492 |
municipio |
0 |
1 |
FALSE |
770 |
San: 6177, Pas: 4601, Pit: 3957, Tun: 3770 |
linea_credito |
0 |
1 |
FALSE |
3 |
Cap: 159961, Inv: 101985, Nor: 93438 |
linea_prod |
0 |
1 |
FALSE |
12 |
Sos: 98549, Com: 75258, Sie: 74391, Mic: 42275 |
destino |
0 |
1 |
FALSE |
756 |
Cap: 29583, 160: 28113, Cap: 24735, 253: 20126 |
genero |
0 |
1 |
FALSE |
6 |
Hom: 223807, Muj: 118219, P. : 9271, Soc: 3587 |
Variable type: numeric
colocacion |
0 |
1 |
32997824.67 |
239864418.65 |
600063 |
3100000 |
6999307 |
1.3e+07 |
9998807000 |
▇▁▁▁▁ |
plazo |
0 |
1 |
40.55 |
29.98 |
0 |
17 |
36 |
6.0e+01 |
218 |
▇▃▁▁▁ |
Unión de bases de datos
- En este ejemplo vamos a unir datos del mercado laboral y créditos agropecuarios. Esta unión se hará por departamento.
Datos créditos
- Vamos a resumir nuestra base de datos por departamento con la siguiente información:
- Departamento (identificador)
- Promedio de rubro (colocación)
- Total del rubro (colocación)
- Promedio de plazo de créditos
creditos_deptos <- creditos2 %>%
group_by(depto) %>%
summarise(rubro_promedio = mean(colocacion),
rubro_total = sum(colocacion),
plazo_promedio = mean(plazo)) %>%
ungroup()
creditos_deptos
Datos mercado laboral
library(readxl)
library(janitor)
empleo <- read_excel("desempleo.xlsx") %>%
clean_names() %>%
rename(depto = dominio)
empleo
Unión de datos
- En este caso vamos a utilizar la función inner_join(). Esta función mantendrá sólo los departamentos que coincidan en ambas bases de datos.
- El identificador común es el departamento (“depto”). Es importante que los niveles (nombre de departamentos) del identificador estén iguales en ambas bases de datos.
creditos_empleo <- inner_join(x = creditos_deptos, y = empleo, by = "depto")
creditos_empleo
- ¿Cuál es la correlación entre la tasa global de participación (tgp) y el rubro total de créditos?
cor(creditos_empleo$tgp, creditos_empleo$rubro_total)
## [1] 0.4320848