Estadísticas agropecuarias del Guaviare

Introducción

Contexto y objetivos del cuaderno

Configuración

“En esta sección escribimos código para cargar todas las librerias que necesitamos”

library(tidyverse)

Datos

“En esta sección vamos a leer el archivo con los datos de estadísticas agropecuarias municipales y los describimos”

EVA<-read_csv("C:\\Users\\María Isabel\\Desktop\\Geomática básica Isabel\\GB2\\Ejerciciosr\\Cuaderno 1\\EVA.csv")
## Rows: 206068 Columns: 17
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (10): DEPARTAMENTO, MUNICIPIO, GRUPO 
## DE CULTIVO, SUBGRUPO 
## DE CULTIVO, ...
## dbl  (7): CÓD. 
## DEP., CÓD. MUN., AÑO, Área Sembrada
## (ha), Área Cosechada
## (ha...
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.

Revisemos el encabezado de EVA

head(EVA)
## # A tibble: 6 × 17
##   CÓD. \…¹ DEPAR…² CÓD. …³ MUNIC…⁴ GRUPO…⁵ SUBGR…⁶ CULTIVO DESAG…⁷   AÑO PERIODO
##      <dbl> <chr>     <dbl> <chr>   <chr>   <chr>   <chr>   <chr>   <dbl> <chr>  
## 1       15 BOYACA    15114 BUSBAN… HORTAL… ACELGA  ACELGA  ACELGA   2006 2006B  
## 2       25 CUNDIN…   25754 SOACHA  HORTAL… ACELGA  ACELGA  ACELGA   2006 2006B  
## 3       25 CUNDIN…   25214 COTA    HORTAL… ACELGA  ACELGA  ACELGA   2006 2006B  
## 4       54 NORTE …   54405 LOS PA… HORTAL… ACELGA  ACELGA  ACELGA   2006 2006B  
## 5       54 NORTE …   54518 PAMPLO… HORTAL… ACELGA  ACELGA  ACELGA   2006 2006B  
## 6       68 SANTAN…   68377 LA BEL… HORTAL… ACELGA  ACELGA  ACELGA   2006 2006B  
## # … with 7 more variables: `Área Sembrada\n(ha)` <dbl>,
## #   `Área Cosechada\n(ha)` <dbl>, `Producción\n(t)` <dbl>,
## #   `Rendimiento\n(t/ha)` <dbl>, `ESTADO FISICO PRODUCCION` <chr>,
## #   `NOMBRE \nCIENTIFICO` <chr>, `CICLO DE CULTIVO` <chr>, and abbreviated
## #   variable names ¹​`CÓD. \nDEP.`, ²​DEPARTAMENTO, ³​`CÓD. MUN.`, ⁴​MUNICIPIO,
## #   ⁵​`GRUPO \nDE CULTIVO`, ⁶​`SUBGRUPO \nDE CULTIVO`,
## #   ⁷​`DESAGREGACIÓN REGIONAL Y/O SISTEMA PRODUCTIVO`

Revisemos el nombre de los atributos de las evaluaciones agropecuarias

names(EVA)
##  [1] "CÓD. \nDEP."                                  
##  [2] "DEPARTAMENTO"                                 
##  [3] "CÓD. MUN."                                    
##  [4] "MUNICIPIO"                                    
##  [5] "GRUPO \nDE CULTIVO"                           
##  [6] "SUBGRUPO \nDE CULTIVO"                        
##  [7] "CULTIVO"                                      
##  [8] "DESAGREGACIÓN REGIONAL Y/O SISTEMA PRODUCTIVO"
##  [9] "AÑO"                                          
## [10] "PERIODO"                                      
## [11] "Área Sembrada\n(ha)"                          
## [12] "Área Cosechada\n(ha)"                         
## [13] "Producción\n(t)"                              
## [14] "Rendimiento\n(t/ha)"                          
## [15] "ESTADO FISICO PRODUCCION"                     
## [16] "NOMBRE \nCIENTIFICO"                          
## [17] "CICLO DE CULTIVO"

Cambiemos los nombres de dichos atributos para facilitar su lectura. Para esto, primero se debe crear un vector que contenga una concatenación con los nuevos nombres. Hecho lo anterior se utiliza la función names en EVA para asignar el vector que contiene los nuevos nombres

nombres<-c("COD_DEP", "DEPARTAMENTO", "COD_MUN", "MUNICIPIO", "GRUPO_CULTIVO", "SUBGRUPO_CULTIVO", "CULTIVO", "DESAG", "YEAR", "PERIOD", "AREA_SIEMBRA", "AREA_COSECHA", "PRODUCCION", "RENDIMIENTO", "ESTADO", "NOMBRE_CIENTIFICO", "CICLO" )
names(EVA)<-nombres
names(EVA)
##  [1] "COD_DEP"           "DEPARTAMENTO"      "COD_MUN"          
##  [4] "MUNICIPIO"         "GRUPO_CULTIVO"     "SUBGRUPO_CULTIVO" 
##  [7] "CULTIVO"           "DESAG"             "YEAR"             
## [10] "PERIOD"            "AREA_SIEMBRA"      "AREA_COSECHA"     
## [13] "PRODUCCION"        "RENDIMIENTO"       "ESTADO"           
## [16] "NOMBRE_CIENTIFICO" "CICLO"
head(EVA)
## # A tibble: 6 × 17
##   COD_DEP DEPARTAME…¹ COD_MUN MUNIC…² GRUPO…³ SUBGR…⁴ CULTIVO DESAG  YEAR PERIOD
##     <dbl> <chr>         <dbl> <chr>   <chr>   <chr>   <chr>   <chr> <dbl> <chr> 
## 1      15 BOYACA        15114 BUSBAN… HORTAL… ACELGA  ACELGA  ACEL…  2006 2006B 
## 2      25 CUNDINAMAR…   25754 SOACHA  HORTAL… ACELGA  ACELGA  ACEL…  2006 2006B 
## 3      25 CUNDINAMAR…   25214 COTA    HORTAL… ACELGA  ACELGA  ACEL…  2006 2006B 
## 4      54 NORTE DE S…   54405 LOS PA… HORTAL… ACELGA  ACELGA  ACEL…  2006 2006B 
## 5      54 NORTE DE S…   54518 PAMPLO… HORTAL… ACELGA  ACELGA  ACEL…  2006 2006B 
## 6      68 SANTANDER     68377 LA BEL… HORTAL… ACELGA  ACELGA  ACEL…  2006 2006B 
## # … with 7 more variables: AREA_SIEMBRA <dbl>, AREA_COSECHA <dbl>,
## #   PRODUCCION <dbl>, RENDIMIENTO <dbl>, ESTADO <chr>, NOMBRE_CIENTIFICO <chr>,
## #   CICLO <chr>, and abbreviated variable names ¹​DEPARTAMENTO, ²​MUNICIPIO,
## #   ³​GRUPO_CULTIVO, ⁴​SUBGRUPO_CULTIVO

Es necesario tener en cuenta únicamente la información relevante para el departamento del Guaviare, por tanto esta se debe filtrar

gvare2018<-dplyr::filter(EVA, DEPARTAMENTO == "GUAVIARE")
gvare2018
## # A tibble: 487 × 17
##    COD_DEP DEPARTAM…¹ COD_MUN MUNIC…² GRUPO…³ SUBGR…⁴ CULTIVO DESAG  YEAR PERIOD
##      <dbl> <chr>        <dbl> <chr>   <chr>   <chr>   <chr>   <chr> <dbl> <chr> 
##  1      95 GUAVIARE     95001 SAN JO… HORTAL… AHUYAMA AHUYAMA AHUY…  2009 2009B 
##  2      95 GUAVIARE     95200 MIRAFL… OLEAGI… AJONJO… AJONJO… AJON…  2009 2009A 
##  3      95 GUAVIARE     95200 MIRAFL… FRUTAL… FRUTAL… ARAZA   ARAZA  2008 2008  
##  4      95 GUAVIARE     95001 SAN JO… FRUTAL… FRUTAL… ARAZA   ARAZA  2008 2008  
##  5      95 GUAVIARE     95025 EL RET… FRUTAL… FRUTAL… ARAZA   ARAZA  2008 2008  
##  6      95 GUAVIARE     95200 MIRAFL… FRUTAL… FRUTAL… ARAZA   ARAZA  2009 2009  
##  7      95 GUAVIARE     95001 SAN JO… FRUTAL… FRUTAL… ARAZA   ARAZA  2009 2009  
##  8      95 GUAVIARE     95025 EL RET… FRUTAL… FRUTAL… ARAZA   ARAZA  2009 2009  
##  9      95 GUAVIARE     95200 MIRAFL… CEREAL… ARROZ   ARROZ   ARRO…  2006 2006B 
## 10      95 GUAVIARE     95200 MIRAFL… CEREAL… ARROZ   ARROZ   ARRO…  2007 2007A 
## # … with 477 more rows, 7 more variables: AREA_SIEMBRA <dbl>,
## #   AREA_COSECHA <dbl>, PRODUCCION <dbl>, RENDIMIENTO <dbl>, ESTADO <chr>,
## #   NOMBRE_CIENTIFICO <chr>, CICLO <chr>, and abbreviated variable names
## #   ¹​DEPARTAMENTO, ²​MUNICIPIO, ³​GRUPO_CULTIVO, ⁴​SUBGRUPO_CULTIVO

Análisis de los datos obtenidos

Diversas tareas de análisis de datos se pueden llevar a cabo a través de la metodología separar-aplicar-combinar, que consiste en separar los datos en grupos, aplicar algunos análisis a cada grupo, y luego combinar los datos. Con R esto se puede hacer con la función group_by

Para ello comenzaremos por agrupar los cultivos del Guaviare y la producción total (es decir desde el año 2007 al 2018) de cada uno de ellos:

gvare2018 %>%
  filter(PRODUCCION>0)%>%
  group_by(CULTIVO) %>%
  summarize(produccion_total=sum(PRODUCCION))%>%
  arrange(desc(produccion_total))
## # A tibble: 22 × 2
##    CULTIVO       produccion_total
##    <chr>                    <dbl>
##  1 PLATANO                 321834
##  2 YUCA                    244028
##  3 ARROZ                   103570
##  4 MAIZ                     98129
##  5 PIÑA                     32430
##  6 CAÑA PANELERA            23003
##  7 CHONTADURO               12620
##  8 PATILLA                   5460
##  9 CAUCHO                    5045
## 10 CAÑA MIEL                 5002
## # … with 12 more rows

Los resultados obtenidos corresponden de este modo a los cultivos más importantes del departamento del Guaviare. En ese sentido también resulta interesante conocer los municipios que tienen mayor participación en la producción en el cultivo de interés

gvare2018 %>%
  group_by(CULTIVO,MUNICIPIO)%>%
  summarize(produccion_maxima=max(PRODUCCION, na.rm=TRUE)) %>%
  slice(which.max(produccion_maxima))%>%
  arrange(desc(produccion_maxima))
## `summarise()` has grouped output by 'CULTIVO'. You can override using the
## `.groups` argument.
## # A tibble: 25 × 3
## # Groups:   CULTIVO [25]
##    CULTIVO       MUNICIPIO             produccion_maxima
##    <chr>         <chr>                             <dbl>
##  1 PLATANO       EL RETORNO                        23688
##  2 YUCA          SAN JOSE DEL GUAVIARE             14170
##  3 PIÑA          SAN JOSE DEL GUAVIARE              5495
##  4 CHONTADURO    EL RETORNO                         4352
##  5 ARROZ         SAN JOSE DEL GUAVIARE              4108
##  6 CAÑA PANELERA EL RETORNO                         3600
##  7 MAIZ          SAN JOSE DEL GUAVIARE              3300
##  8 PATILLA       EL RETORNO                         1890
##  9 CAUCHO        EL RETORNO                          665
## 10 CAÑA MIEL     CALAMAR                             475
## # … with 15 more rows

También se puede hacer el mismo procedimiento pero particularmente para grupos de cultivos

gvare2018 %>%
  group_by(GRUPO_CULTIVO, MUNICIPIO) %>%
  summarize(produccion_maxima = max(PRODUCCION, na.rm = TRUE)) %>%
  slice(which.max(produccion_maxima))%>%
  arrange(desc(produccion_maxima))
## `summarise()` has grouped output by 'GRUPO_CULTIVO'. You can override using the
## `.groups` argument.
## # A tibble: 9 × 3
## # Groups:   GRUPO_CULTIVO [9]
##   GRUPO_CULTIVO         MUNICIPIO             produccion_maxima
##   <chr>                 <chr>                             <dbl>
## 1 TUBERCULOS Y PLATANOS EL RETORNO                        23688
## 2 FRUTALES              SAN JOSE DEL GUAVIARE              5495
## 3 CEREALES              SAN JOSE DEL GUAVIARE              4108
## 4 OTROS PERMANENTES     EL RETORNO                         3600
## 5 FORESTALES            EL RETORNO                          665
## 6 HORTALIZAS            SAN JOSE DEL GUAVIARE               200
## 7 LEGUMINOSAS           MIRAFLORES                           70
## 8 FLORES Y FOLLAJES     SAN JOSE DEL GUAVIARE                11
## 9 OLEAGINOSAS           MIRAFLORES                            6

Ahora se puede seleccionar un grupo de cultivo y exportar para reutilizar. En primer lugar se elige el grupo de cultivo más representivo en términos de producción; tubérculos y plátanos

gvare2018 %>%
  group_by(COD_MUN,MUNICIPIO,GRUPO_CULTIVO)%>%
  filter(GRUPO_CULTIVO=="TUBERCULOS Y PLATANOS")%>%
  summarize(produccion_maxima=max(PRODUCCION, na.rm = TRUE))%>%
  arrange(desc(produccion_maxima))->tuberculos_platano2018
## `summarise()` has grouped output by 'COD_MUN', 'MUNICIPIO'. You can override
## using the `.groups` argument.

Con el fin de hacer un ejercicio comparativo, también se toma como referencia el segundo grupo de cultivos; Frutales

gvare2018%>%
  group_by(COD_MUN,MUNICIPIO,GRUPO_CULTIVO)%>%
  filter(GRUPO_CULTIVO=="FRUTALES")%>%
  summarize(produccion_maxima=max(PRODUCCION, na.rm = TRUE))%>%
  arrange(desc(produccion_maxima))->frutales2018
## `summarise()` has grouped output by 'COD_MUN', 'MUNICIPIO'. You can override
## using the `.groups` argument.

Ahora los datos seleccionados se escriben en un archivo

write_csv(tuberculos_platano2018, "./guaviare_tuberculos_platano.csv")

write_csv(frutales2018,"./guaviare_frutales.csv")