Code
library(tidyverse)
library(janitor)
library(readxl)
library(vroom)
Estadística
library(tidyverse)
library(janitor)
library(readxl)
library(vroom)
<- read_excel("datos-ejemplos/Base agrícola 2019 - 2023.xlsx",
df_evas skip = 6) |>
clean_names()
|> head() df_evas
<-
df_creditos vroom("datos-ejemplos/Colocaciones_de_Cr_dito_Sector_Agropecuario_-_2021-_2024_20240910.csv") |>
clean_names()
|> head() df_creditos
$departamento |>
df_evasunique() |>
length()
[1] 32
$departamento_inversion |>
df_creditosunique() |>
length()
[1] 33
|>
df_evas count(departamento, sort = TRUE)
|>
df_creditos count(departamento_inversion, sort = TRUE)
$ano |> range() df_evas
[1] 2019 2023
$ano |> range() df_creditos
[1] 2021 2024
|>
df_creditos count(departamento_inversion, ano)
$cultivo |>
df_evasunique() |>
length()
[1] 162
|>
df_creditos count(linea_de_produccion, sort = TRUE)
|>
df_creditos count(destino_de_credito, sort = TRUE)
df_evas2
que será obtenida al realizar los siguientes procesos:
area_perdida_ha
y area_perdida_p
(porcentaje) en la tabla de evaluaciones agropecuarias.<-
df_evas2 |>
df_evas select(-c(
nombre_cientifico_del_cultivo,
codigo_del_cultivo,
estado_fisico_del_cultivo|>
)) rename(id_depto = codigo_dane_departamento,
id_mpio = codigo_dane_municipio,
desagregacion = desagregacion_cultivo) |>
relocate(ano, periodo, everything()) |>
mutate(
area_perdida_ha = area_sembrada_ha - area_cosechada_ha,
area_perdida_p = (area_perdida_ha / area_sembrada_ha) * 100,
id_depto = as.numeric(id_depto),
id_mpio = as.numeric(id_mpio)
)
|> head() df_evas2
df_creditos2
que será obtenida al realizar los siguientes procesos:
cuota_credito
en la tabla de créditos agropecuarios.<-
df_creditos2 |>
df_creditos select(-c(id_tipo_prod, percent_fag, vlr_inic_garantia, cantidad)) |>
rename(
id_depto_inversion = id_depto,
id_mpio_inversion = id_munic,
depto_inversion = departamento_inversion,
mpio_inversion = municipio_inversion,
mpio_posconflicto = municipio_de_post_conflico,
id_depto_colocacion = depcol,
id_mpio_colocacion = muncol,
depto_colocacion = departamento_de_colocacion_de_credito,
mpio_colocacion = municipio_colocacion_de_credito
|>
) relocate(ano, mes, latitud, longitud, genero, everything()) |>
mutate(cuota_credito = valor_inversion / plazo)
|> head() df_creditos2
<-
df_evas3 |>
df_evas2 filter(cultivo == "Café") |>
arrange(desc(rendimiento_t_ha))
|> head() df_evas3
slice()
:|>
df_evas3 slice(1:20)
<-
df_creditos3 |>
df_creditos2 filter(destino_de_credito == "141100 Café") |>
arrange(desc(valor_inversion))
|> head() df_creditos3
total_area_sembrada
total_area_cosechada
total_area_perdida
total_produccion
promedio_rto
<-
df_evas_final |>
df_evas3 group_by(ano, id_depto, departamento) |>
reframe(
total_area_sembrada = sum(area_sembrada_ha, na.rm = TRUE),
total_area_cosechada = sum(area_cosechada_ha, na.rm = TRUE),
total_area_perdida = sum(area_perdida_ha, na.rm = TRUE),
total_produccion = sum(produccion_t, na.rm = TRUE),
promedio_rto = mean(rendimiento_t_ha, na.rm = TRUE)
)
|> head() df_evas_final
total_inversion
promedio_inversion
promedio_plazo
promedio_cuota
total_creditos
<-
df_creditos_final |>
df_creditos3 group_by(ano, id_depto_inversion) |>
reframe(
total_inversion = sum(valor_inversion, na.rm = TRUE),
promedio_inversion = mean(valor_inversion, na.rm = TRUE),
promedio_plazo = mean(plazo, na.rm = TRUE),
promedio_cuota = mean(cuota_credito, na.rm = TRUE),
total_creditos = n()
)
|> head() df_creditos_final
<-
df_total_inner inner_join(
x = df_evas_final,
y = df_creditos_final,
by = c("ano", "id_depto" = "id_depto_inversion")
)
df_total_inner
<-
df_total_left left_join(
x = df_evas_final,
y = df_creditos_final,
by = c("ano", "id_depto" = "id_depto_inversion")
)
df_total_left
¿Espera que departamentos con mayor valor de créditos también tengan mayores rendimientos? ¿Esto puede variar dependiendo del cultivo?❓❓
|>
df_total_inner ggplot(aes(x = total_inversion, y = promedio_rto)) +
geom_point() +
scale_x_log10() +
geom_smooth()