Lectura de la base de datos

datos <- read.csv(file = 'CreditosAgropecuario.csv', encoding = 'UTF-8')

Descripción de los datos:

Estos datos corresponden a operaciones de créditos colocadas en el sector agropecuario colombiano en el año 2017. Los mismos están disponibles en https://www.datos.gov.co/Agricultura-y-Desarrollo-Rural/Estad-sticas-sector-agropecuario-cultivos-anuales-/cb3g-6x28, cuya consulta se realizó el día Martes 05 de Diciembre del 2017.

La base de datos está constituida por 350109 observaciones y 19 variables:

  • Año;
  • Mes;
  • Fuente de colocación;
  • Tipo de productor;
  • Valor de la inversión;
  • Colocación;
  • Departamento donde se realizó la inversión;
  • Municipio donde se realizó la inversión;
  • Especificación si el municipio es de postconflicto;
  • Departamento de colocación del crédito;
  • Municipio de colocación del crédito;
  • Plazo;
  • Línea de crédito;
  • Línea de producción;
  • Género;
  • % FAG;
  • Valor inicial de la garantía;
  • Latitud;
  • Cantidad.
str(datos) # A partir de la función "str"", se proporciona información sobre la estructura de las variables incluidas en la base de datos
## 'data.frame':    350109 obs. of  19 variables:
##  $ Año                                  : int  2017 2017 2017 2017 2017 2017 2017 2017 2017 2017 ...
##  $ Mes                                  : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ fuente.Colocacion                    : Factor w/ 3 levels "AGROPECUARIA",..: 3 3 3 3 3 3 3 3 3 3 ...
##  $ Tipo.Productor                       : Factor w/ 3 levels "GRANDE","MEDIANO",..: 2 2 3 2 3 2 2 2 2 2 ...
##  $ Valor.Inversion                      : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ Colocacion                           : num  1.6e+07 1.3e+07 5.0e+05 2.0e+06 3.8e+06 ...
##  $ Departamento.Inversion               : Factor w/ 33 levels "AMAZONAS","ANTIOQUIA",..: 19 31 19 2 26 2 20 19 2 2 ...
##  $ Municipio.Inversion                  : Factor w/ 1016 levels "ABEJORRAL","ABREGO",..: 552 937 552 507 504 507 812 552 507 507 ...
##  $ Municipio.de.PostConflico.           : Factor w/ 2 levels "N","S": 1 2 1 1 1 1 2 1 1 1 ...
##  $ Departamento.de.Colocacion.de.Credito: Factor w/ 33 levels "AMAZONAS","ANTIOQUIA",..: 19 31 19 2 26 2 20 19 2 2 ...
##  $ Municipio.Colocacion.de.Credito      : Factor w/ 783 levels "ABEJORRAL","ABREGO",..: 431 723 431 395 392 395 624 431 395 395 ...
##  $ Plazo                                : int  12 12 12 12 12 12 12 12 12 12 ...
##  $ Linea.de.Credito                     : Factor w/ 3 levels "Capital de Trabajo",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Linea.de.Produccion                  : Factor w/ 30 levels "ACTIVIDADES RURALES (CT)",..: 29 29 29 29 29 29 29 29 29 29 ...
##  $ Genero                               : Factor w/ 3 levels "HOMBRE","MUJER",..: 2 2 1 2 2 2 2 1 2 3 ...
##  $ X..FAG                               : Factor w/ 40 levels "","10%","100%",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Vlr.Inic.Garantia                    : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ LATITUD                              : Factor w/ 1086 levels "","(-0.2, -74.7666667)",..: 246 321 246 771 460 771 179 246 771 771 ...
##  $ CANTIDAD                             : int  1 1 1 1 1 1 1 1 1 1 ...

Preguntas generadas a los datos leídos

library(dplyr) # Se cargan las librería de interés
## Warning: package 'dplyr' was built under R version 3.3.3
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 3.3.3
library(DT)
## Warning: package 'DT' was built under R version 3.3.3

¿En qué mes del año 2017, se generaron el mayor número de créditos?

Para responder a la pregunta anterior, se procede a llevar a cabo la coerción de la variable mes, puesto que “R” la lee como un número entero (observado a partir de la función “str”), y para realizar la gráfica que responderá a la pregunta planteada, es necesario que la variable se convierta a factor.

P1.1 <- datos %>%
  mutate(Mes = as.factor(Mes))
## Warning: package 'bindrcpp' was built under R version 3.3.3
str(P1.1[, 2]) # La variable mes se cambió a factor
##  Factor w/ 9 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
P1.2 <- P1.1 %>%
  group_by(Mes) %>%
  summarise(n_cred_mes = sum(CANTIDAD))
ggplot(data = P1.2, aes(x = Mes, y = n_cred_mes)) +
  geom_bar(stat = 'identity', color = 'mediumturquoise', fill = 'yellow') +
  labs(x = 'Meses del año 2017', y = 'N\u00FAmero de cr\u00E9ditos') +
  geom_text(aes(label = n_cred_mes), color = 'cornsilk4', size = 6, position = position_identity(), vjust = +1.6) +
  theme_classic() +
  theme(axis.text= element_text(size = 14), axis.title = element_text(size = 14, face = 'bold'))

Claramente se observa que en el mes número 6, se generaron el mayor número de créditos.

¿Del valor total de la inversión, que tipo de productor (pequeño, mediano y/o grande) obtuvo a lo sumo el mayor valor (representado en porcentaje)?

A continuación se crea un tema en blanco (blank_theme), para que al momento de hacer el gráfico “pie”, quede más agradable a la vista:

blank_theme <- theme_minimal() +
  theme(
  axis.title.x = element_blank(),
  axis.title.y = element_blank(),
  panel.border = element_blank(),
  panel.grid = element_blank(),
  axis.ticks = element_blank()
  )

Para responder a la pregunta anterior, no se incluyen valores en la inversión iguales a cero, y se agrupan dichos valores por tipo de productor.

P2.1 <- datos %>%
  filter(Valor.Inversion != 0) %>%
  group_by(Tipo.Productor) %>%
  summarise(val_inv_prod = sum(Valor.Inversion)) %>%
  mutate(total_val_inv_prod = sum(val_inv_prod),
         porcentaje = (val_inv_prod/total_val_inv_prod)*100)
ggplot(data = P2.1, aes(x = '', y = porcentaje, fill = Tipo.Productor)) +
  geom_bar(width = 1, stat = 'identity') +
  coord_polar(theta = 'y', start = 0) +
  scale_fill_brewer(palette = 'Pastel2') + blank_theme +
  geom_text(aes(label = round(porcentaje, digits = 2)), position = position_stack(vjust = 0.5), size = 6, color = 'cornsilk4') +
  theme(legend.position = 'top') + theme(legend.title = element_text(colour = 'black', size = 14, face ='bold')) + 
  theme(legend.text = element_text(colour = 'gray44', size = 14, face = 'bold')) +
  labs(fill = 'Tipo de productor')

Claramente se observa que el “gran” productor es el que tiene a lo sumo, un mayor valor en la inversión.

¿Qué municipio del departamento de Antioquia tuvo un mayor número de créditos?

P3.1 <- datos %>%
  filter(Departamento.Inversion == 'ANTIOQUIA') %>%
  group_by(Municipio.Inversion) %>%
  select(Departamento.Inversion, Municipio.Inversion) %>%
  count(Municipio.Inversion)
ggplot(data = P3.1, aes(x = Municipio.Inversion, y = n)) +
  geom_bar(stat = 'identity', color = 'gray0', fill = 'chartreuse') +
  labs(x = 'Municipio del departamento de Antioquia', y = 'N\u00FAmero de cr\u00E9ditos') +
  geom_text(aes(label = n), color = 'deeppink', size = 2, position = position_identity(), vjust = -0.1) +
  theme_classic() +
  theme(axis.text= element_text(size = 4, angle = 90), axis.title = element_text(size = 8, face = 'bold'))

Claramente se observa que el municipio de Medellín tuvo un mayor número de créditos. Esto se puede observar igualmente mediante una tabla:

datatable(P3.1)

¿Cómo es la distribución del valor del crédito solicitado por los distritos de Colombia?

El término distrito es usado en Colombia para definir a las entidades territoriales de segundo nivel (municipios) dotadas de un régimen legal, político, fiscal y administrativo independiente, con características especiales que las destaca o diferencia de las demás en cuanto a su economía, sus recursos, su cultura o su papel administrativo y geográfico. Fuente: https://es.wikipedia.org/wiki/Distritos_de_Colombia#cite_note-1. Estos son:

  • Bogotá;
  • Barranquilla;
  • Buenaventura;
  • Cartagena de Indias;
  • Santa Marta;
  • Riohacha.
P4.1 <- datos %>%
  select(Colocacion, Municipio.Colocacion.de.Credito) %>%
  filter(Municipio.Colocacion.de.Credito %in% c('SANTAFE DE BOGOTA D.C.', 'BARRANQUILLA', 'BUENAVENTURA', 'CARTAGENA DE INDIAS', 'SANTA MARTA', 'RIOHACHA') & Colocacion != 0)
ggplot(data = P4.1, aes(x = Colocacion, fill = Municipio.Colocacion.de.Credito, color = Municipio.Colocacion.de.Credito)) +
  geom_histogram(position = 'identity', alpha = 0.5) + facet_wrap(~ Municipio.Colocacion.de.Credito) +
  labs(x = 'Valor del cr\u00E9dito solicitado', y = 'Frecuencia') +
  theme_classic() + theme(legend.position = 'none') +
  theme(axis.text = element_text(size = 8), axis.title = element_text(size = 14, face = 'bold'))
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

Para cada subregión del departamento de Antioquia, ¿mientras mayor es el valor del crédito solicitado, mayor es el valor de la inversión?

Subregiones es el nombre con el cual se conoce a las subdivisiones territoriales que conforman el departamento colombiano de Antioquia. En total son 9 subregiones que no son relevantes en términos de gobierno, y que fueron creadas para facilitar la administración del departamento, en las que se agrupan los 125 municipios, incluyendo el Área metropolitana del Valle de Aburrá. Fuente: https://es.wikipedia.org/wiki/Subregiones_de_Antioquia.

P5.1 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('CAUCASIA', 'CACERES', 'EL BAGRE', 'NECHI', 'TARAZA', 'ZARAGOZA')) %>%
  mutate(Subregion.Inversion = 'Bajo Cauca') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.2 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('CARACOLI', 'MACEO', 'PUERTO BERRIO', 'PUERTO NARE', 'PUERTO TRIUNFO', 'YONDO')) %>%
  mutate(Subregion.Inversion = 'Magdalena Medio') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.3 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('AMALFI', 'ANORI', 'CISNEROS', 'REMEDIOS', 'SAN ROQUE', 'SANTO DOMINGO', 'SEGOVIA', 'VEGACHI', 'YALI', 'YOLOMBO')) %>%
  mutate(Subregion.Inversion = 'Nordeste') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.4 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('ANGOSTURA', 'BELMIRA', 'BRICEÑO', 'CAMPAMENTO', 'CAROLINA', 'ENTRERRIOS', 'GOMEZ PLATA', 'GUADALUPE', 'ITUANGO', 'SAN ANDRES DE CUERQUIA', 'SAN JOSE DE LA MONTANA', 'SAN PEDRO DE LOS MILAGROS', 'SANTA ROSA DE OSOS', 'TOLEDO', 'VALDIVIA', 'YARUMAL')) %>%
  mutate(Subregion.Inversion = 'Norte') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.5 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('ABRIAGUI', 'ANZA', 'ARMENIA', 'BURITICA', 'CAICEDO', 'DABEIBA', 'EBEJICO', 'FRONTINO', 'GIRALDO', 'HELICONIA', 'LIBORINA', 'OLAYA', 'PEQUE', 'SABANALARGA', 'SAN JERONIMO', 'SANTA FE DE ANTIOQUIA', 'SOPETRAN', 'URAMITA')) %>%
  mutate(Subregion.Inversion = 'Occidente') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.6 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('ABEJORRAL', 'ALEJANDRIA', 'ARGELIA', 'CARMEN DE VIBORAL', 'COCORNA', 'CONCEPCION', 'EL PEÑOL', 'RETIRO', 'SANTUARIO', 'GRANADA', 'GUARNE', 'GUATAPE', 'LA CEJA', 'LA UNION', 'MARINILLA', 'NARIÑO', 'RIONEGRO', 'SAN FRANCISCO', 'SAN LUIS', 'SAN RAFAEL', 'SAN VICENTE FERRER', 'SONSON')) %>%
  mutate(Subregion.Inversion = 'Oriente') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.7 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('AMAGA', 'ANDES', 'ANGELOPOLIS', 'BETANIA', 'BETULIA', 'CARAMANTA', 'CIUDAD BOLIVAR', 'CONCORDIA', 'FREDONIA', 'HISPANIA', 'JARDIN', 'JERICO', 'LA PINTADA', 'MONTEBELLO', 'PUEBLORRICO', 'SALGAR', 'SANTA BARBARA', 'TAMESIS', 'TARSO', 'TITIRIBI', 'URRAO', 'VALPARAISO', 'VENECIA')) %>%
  mutate(Subregion.Inversion = 'Suroeste') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.8 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('APARTADO', 'ARBOLETES', 'CAREPA', 'CHIGORODO', 'MURINDO', 'MUTATA', 'NECOCLI', 'SAN JUAN DE URABA', 'SAN PEDRO DE URUBA', 'TURBO', 'VIGIA DEL FUERTE')) %>%
  mutate(Subregion.Inversion = 'Urabá') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.9 <- datos %>%
  filter(Valor.Inversion != 0 & Colocacion != 0 & Departamento.Inversion == 'ANTIOQUIA' & Municipio.Inversion %in% c('BARBOSA', 'BELLO', 'CALDAS', 'COPACABANA', 'ENVIGADO', 'GIRARDOTA', 'ITAGUI', 'LA ESTRELLA', 'MEDELLIN', 'SABANETA')) %>%
  mutate(Subregion.Inversion = 'Valle de Aburrá') %>%
  select(Valor.Inversion, Colocacion, Subregion.Inversion)
P5.10 <- rbind(P5.1, P5.2, P5.3, P5.4, P5.5, P5.6, P5.7, P5.8, P5.9)
ggplot(data = P5.10, aes(x = Valor.Inversion, y = Colocacion, fill = Subregion.Inversion, color = Subregion.Inversion)) +
  geom_point(aes(colour = Subregion.Inversion), size = 4) +
  labs(x = 'Valor de la inversi\u00F3n', y = 'Valor del cr\u00E9dito solicitado') + 
  scale_x_continuous(limit = c(0, 4.0e+10)) + theme_classic() + theme(legend.position = 'bottom') +
  theme(legend.direction = 'horizontal') + theme(legend.title = element_text(colour = 'black', size = 8, face ='bold')) +
  theme(legend.text = element_text(colour = 'gray44', size = 8, face = 'bold')) +
  theme(axis.text = element_text(size = 8), axis.title = element_text(size = 14, face = 'bold'))
## Warning: Removed 4 rows containing missing values (geom_point).

La respuesta a la pregunta anterior es SI, puesto que en la gráfica se observa que a medida que aumenta valor del crédito solicitado, mayor es el valor de la inversión.