datos bovinos

ordenar los datos

library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.0 --
## v ggplot2 3.3.2     v purrr   0.3.4
## v tibble  3.0.3     v dplyr   1.0.2
## v tidyr   1.1.2     v stringr 1.4.0
## v readr   1.4.0     v forcats 0.5.0
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(readxl)
library(janitor)
## Warning: package 'janitor' was built under R version 4.0.3
## 
## Attaching package: 'janitor'
## The following objects are masked from 'package:stats':
## 
##     chisq.test, fisher.test
library(Hmisc)
## Warning: package 'Hmisc' was built under R version 4.0.3
## Loading required package: lattice
## Loading required package: survival
## Loading required package: Formula
## Warning: package 'Formula' was built under R version 4.0.3
## 
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:dplyr':
## 
##     src, summarize
## The following objects are masked from 'package:base':
## 
##     format.pval, units
porcinos <- read_excel("PORCINOS-CENSOS-2020.xlsx", skip = 4)
porcinos2 <- clean_names(porcinos) %>% 
  select(departamento,municipio,total_porcinos_2019) %>% 
  mutate(departamento = capitalize(tolower(departamento)),municipio = capitalize(tolower(municipio)))
porcinos2
## # A tibble: 1,123 x 3
##    departamento municipio   total_porcinos_2019
##    <chr>        <chr>                     <dbl>
##  1 Antioquia    Medellin                 164598
##  2 Antioquia    Abejorral                   300
##  3 Antioquia    Abriaqui                    455
##  4 Antioquia    Alejandria                  507
##  5 Antioquia    Amaga                     10657
##  6 Antioquia    Amalfi                     3228
##  7 Antioquia    Andes                     15034
##  8 Antioquia    Angelopolis               20708
##  9 Antioquia    Angostura                 26887
## 10 Antioquia    Anori                       220
## # ... with 1,113 more rows
library(readxl)
library(tidyverse)
library(janitor)
library(Hmisc)
bufalos <- read_excel("BUFALOS-CENSO-2020.xlsx", skip = 4)
bufalos2 <- clean_names(bufalos) %>% 
  select(departamento, municipio, total_bufalos) %>% 
  mutate(departamento = capitalize(tolower(departamento)),municipio=capitalize(tolower(municipio)))
library(readxl)
library(tidyverse)
library(janitor)
library(Hmisc)
equinos <- read_excel("Equinos-Caprinos-Ovinos-CENSOS-2020.xlsx", skip = 4)
equinos2 <- clean_names(equinos) %>% 
  select(departamento, municipio, total_equinos) %>% 
  mutate(departamento = capitalize(tolower(departamento)),municipio=capitalize(tolower(municipio)))

# union de los datos

porcinos_deptos <- porcinos2 %>% 
  group_by(departamento) %>% 
  summarise(total_cerdos = sum(total_porcinos_2019))
## `summarise()` ungrouping output (override with `.groups` argument)
porcinos_deptos
## # A tibble: 34 x 2
##    departamento total_cerdos
##    <chr>               <dbl>
##  1 Amazonas              270
##  2 Antioquia         1998407
##  3 Arauca              35675
##  4 Atlantico          198240
##  5 Bogota d.c.          1584
##  6 Bolivar            304261
##  7 Boyaca             165956
##  8 Caldas             132147
##  9 Caqueta             54370
## 10 Casanare            76850
## # ... with 24 more rows
bufalos_deptos <- bufalos2 %>% 
  group_by(departamento) %>% 
  summarise(total_bufalos = sum(total_bufalos))
## `summarise()` ungrouping output (override with `.groups` argument)
bufalos_deptos
## # A tibble: 34 x 2
##    departamento total_bufalos
##    <chr>                <dbl>
##  1 Amazonas                89
##  2 Antioquia            54638
##  3 Arauca                7347
##  4 Atlantico              509
##  5 Bogota d.c.             39
##  6 Bolivar              17620
##  7 Boyaca                6404
##  8 Caldas                2367
##  9 Caqueta              13417
## 10 Casanare               131
## # ... with 24 more rows
equinos_deptos <- equinos2 %>% 
  group_by(departamento) %>% 
  summarise(total_equinos = sum(total_equinos))
## `summarise()` ungrouping output (override with `.groups` argument)
equinos_deptos
## # A tibble: 34 x 2
##    departamento total_equinos
##    <chr>                <dbl>
##  1 Amazonas                55
##  2 Antioquia           253631
##  3 Arauca               53005
##  4 Atlantico             9775
##  5 Bogota d.c.           1689
##  6 Bolivar              61068
##  7 Boyaca               52279
##  8 Caldas               42118
##  9 Caqueta              64719
## 10 Casanare             92471
## # ... with 24 more rows

datos unidos

animales <- inner_join(x = porcinos_deptos,
                       y = bufalos_deptos,
                       by = "departamento")
animales
## # A tibble: 34 x 3
##    departamento total_cerdos total_bufalos
##    <chr>               <dbl>         <dbl>
##  1 Amazonas              270            89
##  2 Antioquia         1998407         54638
##  3 Arauca              35675          7347
##  4 Atlantico          198240           509
##  5 Bogota d.c.          1584            39
##  6 Bolivar            304261         17620
##  7 Boyaca             165956          6404
##  8 Caldas             132147          2367
##  9 Caqueta             54370         13417
## 10 Casanare            76850           131
## # ... with 24 more rows

base de datos unida

total_animales <- inner_join(x =animales,
                         y =equinos_deptos,
                         by = "departamento")
total_animales
## # A tibble: 34 x 4
##    departamento total_cerdos total_bufalos total_equinos
##    <chr>               <dbl>         <dbl>         <dbl>
##  1 Amazonas              270            89            55
##  2 Antioquia         1998407         54638        253631
##  3 Arauca              35675          7347         53005
##  4 Atlantico          198240           509          9775
##  5 Bogota d.c.          1584            39          1689
##  6 Bolivar            304261         17620         61068
##  7 Boyaca             165956          6404         52279
##  8 Caldas             132147          2367         42118
##  9 Caqueta             54370         13417         64719
## 10 Casanare            76850           131         92471
## # ... with 24 more rows

#ejemplo

ejemplo <- inner_join(x = porcinos_deptos,
                      y = bufalos_deptos,
                      by = "departamento") %>% 
  inner_join(x = equinos_deptos,
             by = "departamento")
ejemplo
## # A tibble: 34 x 4
##    departamento total_equinos total_cerdos total_bufalos
##    <chr>                <dbl>        <dbl>         <dbl>
##  1 Amazonas                55          270            89
##  2 Antioquia           253631      1998407         54638
##  3 Arauca               53005        35675          7347
##  4 Atlantico             9775       198240           509
##  5 Bogota d.c.           1689         1584            39
##  6 Bolivar              61068       304261         17620
##  7 Boyaca               52279       165956          6404
##  8 Caldas               42118       132147          2367
##  9 Caqueta              64719        54370         13417
## 10 Casanare             92471        76850           131
## # ... with 24 more rows

consulta

total_animales %>% 
  pivot_longer(names_to = "inventario", values_to = "animales", cols = -departamento) %>% 
  filter(!is.na(departamento)) %>% 
  ggplot(mapping = aes(x = reorder(departamento, animales),
                       y = animales,
                       fill = inventario)) +
  geom_col(position = "fill")+
  coord_flip()+
  labs(x= "Departamento")