Trabajo final ISIL

Importación de Datos

En esta sección, cargamos los datos de créditos de Agrobanco del Fondo Agroperú.

Mostrar código
# Cargar librerías necesarias
library(readxl)
library(dplyr)
library(ggplot2)

# Importar los datos
cartera_nueva_fagroperu <- read_excel("cartera_fondo_agroperu.xlsx")

Resumen de la información 1

Agrupamos y resumimos los datos para obtener los montos aprobados y el número de créditos por producto.

Mostrar código
cartera_dni_ruc <- cartera_nueva_fagroperu %>%
  group_by(Producto_TRT) %>%
  summarise(
    Monto_aprobado = sum(`Monto Aprobado`) / 1e6, # Convertir a millones
    Créditos = n(),
    .groups = 'drop'
  ) %>%
  arrange(-Monto_aprobado) %>%
  slice_head(n = 5) # Seleccionar los primeros 5 resultados

cartera_dni_ruc
# A tibble: 5 × 3
  Producto_TRT   Monto_aprobado Créditos
  <chr>                   <dbl>    <int>
1 Vacuno - Carne           586.    42646
2 Cafe                     476.    31411
3 Cacao                    247.    21633
4 Papa                     231.    19517
5 Arroz                    118.     8290

Visualización del gráfico de barras 1

Creamos un gráfico de barras atractivo para mostrar los resultados.

Mostrar código
grafico_1 <- ggplot(cartera_dni_ruc, aes(x = reorder(Producto_TRT, -Monto_aprobado), y = Monto_aprobado, fill = Producto_TRT)) +
  # Barras
  geom_bar(stat = "identity", width = 0.7, position = "dodge") +
  
  # Etiquetas de Monto aprobado sobre las barras
  geom_text(aes(label = paste0(round(Monto_aprobado, 1), " mm")), 
            vjust = -0.3, size = 6, fontface = "bold", color = "black") +
  
  # Etiquetas de Créditos dentro de las barras
  geom_text(aes(label = paste(Créditos, "créditos")), 
            vjust = 1.5, size = 4, color = "white", fontface = "bold") +
  
  # Escala de colores personalizada
  scale_fill_manual(values = c("#1f78b4", "#33a02c", "#ff7f00", "#e31a1c", "#6a3d9a")) +
  
  # Títulos y etiquetas
  labs(
    title = "Monto aprobado y número de créditos por tipo de producto (2021-2024)",
    x = "Producto",
    y = "Monto (millones de soles)",
    fill = "Producto"
  ) +
  
  # Tema visual atractivo
  theme_minimal(base_size = 16) +
  theme(
    plot.title = element_text(face = "bold", size = 13, hjust = 0.5),
    axis.title.x = element_text(face = "bold", size = 16),
    axis.title.y = element_text(face = "bold", size = 16),
    axis.text.x = element_text(size = 14, face = "bold"),
    axis.text.y = element_text(size = 14),
    legend.position = "bottom",
    legend.title = element_text(size = 14, face = "bold"),
    legend.text = element_text(size = 12),
    panel.grid.major = element_line(color = "grey85"),
    panel.grid.minor = element_blank()
  ) +
  
  # Ajustar límites del eje y
  ylim(0, max(cartera_dni_ruc$Monto_aprobado) * 1.2) # Espacio extra para las etiquetas
grafico_1