U1A10

EQUIPO 6: Angélica Payán Serna, Karen Gutierrez Velásquez y Andrea Higuera Chavez

25/02/2021

CUARTO CASO DE ESTUDIO: ANÁLISIS DE APICULTURA.

La cantidad de abejas y otros polinizadores se está reduciendo en muchas partes del mundo debido, en buena parte, a las prácticas agrícolas intensivas, el monocultivo, el uso excesivo de productos químicos agrícolas y a unas temperaturas más altas asociadas al cambio climático, que afectan no solo a los rendimientos de los cultivos sino también la nutrición. Si esta tendencia continúa, cada vez con más frecuencias los cultivos nutritivos como frutas, nueces y muchas verduras serán sustituidos por cultivos básicos como el arroz, el maíz y las patatas, lo que podría derivar en una dieta desequilibrada. http://www.fao.org/news/story/es/item/1194963/icode/

Acerca de este documento

  • El objetivo es analizar la cantidad de pesticidas que se utilizan en México para poder relacionarlo con el declive de las abejas a lo largo de los años.

  • Los datos fueron obtenidos de http://www.fao.org/faostat/es/#data/RP

Descarga de este código

xfun::embed_file("U1A9.Rmd")

Download U1A9.Rmd

¿Cómo afecta el uso de plaguicidas en las abejas?

  • Los pesticidas son sustancias producidas de forma natural o industrial para destruir organismos potencialmente perjudiciales para las plantas cultivadas y/o animales de producción (Schaaf, 2015).

  • De acuerdo con un estudio de la Sociedad Latinoamericana de Investigación en Abejas, en México durante el 2017 se perdieron el 17 por ciento de todas las colmenas, entre otros factores, por el uso desmedido de plaguicidas y agroquímicos altamente tóxicos.

Importación de datos

setwd("~/Estadistica")
library(readxl)
library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.0 --
## v ggplot2 3.3.3     v purrr   0.3.4
## v tibble  3.0.5     v dplyr   1.0.4
## v tidyr   1.1.2     v stringr 1.4.0
## v readr   1.4.0     v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(prettydoc)
library(readr)
library(DT)
library(pacman)
p_load("base64enc","htmltools","mime","xfun","prettydoc","readr","knitr","DT","dplyr","ggplot2","plotly","gganimate","gifski","scales")
pesticidas <- read.csv("~/Estadistica/pesticidas.csv")
View(pesticidas)

Tabla de datos

datatable(pesticidas)

Gráfico de las toneladas de pesticida utilizados (2000-2018)

año <- pesticidas$Año
toneladas <- pesticidas$Toneladas

plot(año,toneladas)

colmenas <- read.csv("~/Estadistica/colmenas.csv")
View(colmenas)
datatable(colmenas)
año <- colmenas$Fecha
colmenas1 <- colmenas$Colmenas

plot(año,colmenas1)

Relación de las toneladas de pesticida con las colmenas (2000-2018)

datos <- data.frame(colmenas, pesticidas)
datos
##    Fecha Colmenas  Año Toneladas
## 1   2000  1875731 2000     26625
## 2   2001  1862372 2001     23372
## 3   2002  1783854 2002     11536
## 4   2003  1727234 2003     16285
## 5   2004  1745078 2004     18508
## 6   2005  1732112 2005     39172
## 7   2006  1747033 2006     38403
## 8   2007  1741040 2007     50894
## 9   2008  1797478 2008     50155
## 10  2009  1774757 2009     50328
## 11  2010  1842130 2010     52305
## 12  2011  1847667 2011     53220
## 13  2012  1898239 2012     49214
## 14  2013  1933105 2013     47551
## 15  2014  1981162 2014     43029
## 16  2015  2017931 2015     48293
## 17  2016  1859350 2016     47421
## 18  2017  1853807 2017     50802
## 19  2018  2172107 2018     53144
ton <- datos$Toneladas
colm <- datos$Colmenas

colmenas2 <- ggplot(data = datos) + 
  geom_line(aes(Fecha, colm, colour="Colmenas")) + 
  geom_line(aes(Fecha, ton, colour="Toneladas de pesticida")) + 
  xlab("Fecha") +
  ylab("Valor") +
  labs(colour="Datos") +
  ggtitle("Número de colmenas vs Toneladas de pesticida (2000-2018)") +
  scale_y_continuous(labels = comma)
colmenas2

ggplotly(colmenas2)

ANÁLISIS DE K-MEANS

ipak <- function(pkg){
  new.pkg <- pkg[!(pkg %in% installed.packages()[, "Package"])]
  if (length(new.pkg)) 
    install.packages(new.pkg, dependencies = TRUE)
  sapply(pkg, require, character.only = TRUE)
}

packages <- c("tidyverse","cluster", "factoextra","NbClust","tidyr")
ipak(packages)
## Loading required package: cluster
## Loading required package: factoextra
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
## Loading required package: NbClust
##  tidyverse    cluster factoextra    NbClust      tidyr 
##       TRUE       TRUE       TRUE       TRUE       TRUE

Normalizar las puntuaciones

colmenas
##    Fecha Colmenas
## 1   2000  1875731
## 2   2001  1862372
## 3   2002  1783854
## 4   2003  1727234
## 5   2004  1745078
## 6   2005  1732112
## 7   2006  1747033
## 8   2007  1741040
## 9   2008  1797478
## 10  2009  1774757
## 11  2010  1842130
## 12  2011  1847667
## 13  2012  1898239
## 14  2013  1933105
## 15  2014  1981162
## 16  2015  2017931
## 17  2016  1859350
## 18  2017  1853807
## 19  2018  2172107
scale(colmenas)
##            Fecha    Colmenas
##  [1,] -1.5993420  0.20596921
##  [2,] -1.4216373  0.08893523
##  [3,] -1.2439326 -0.59893613
##  [4,] -1.0662280 -1.09496604
##  [5,] -0.8885233 -0.93864040
##  [6,] -0.7108187 -1.05223143
##  [7,] -0.5331140 -0.92151327
##  [8,] -0.3554093 -0.97401604
##  [9,] -0.1777047 -0.47958058
## [10,]  0.0000000 -0.67863207
## [11,]  0.1777047 -0.08839853
## [12,]  0.3554093 -0.03989062
## [13,]  0.5331140  0.40315468
## [14,]  0.7108187  0.70860467
## [15,]  0.8885233  1.12961685
## [16,]  1.0662280  1.45173843
## [17,]  1.2439326  0.06246045
## [18,]  1.4216373  0.01389998
## [19,]  1.5993420  2.80242560
## attr(,"scaled:center")
##    Fecha Colmenas 
##     2009  1852220 
## attr(,"scaled:scale")
##        Fecha     Colmenas 
## 5.627314e+00 1.141463e+05
head(colmenas)
##   Fecha Colmenas
## 1  2000  1875731
## 2  2001  1862372
## 3  2002  1783854
## 4  2003  1727234
## 5  2004  1745078
## 6  2005  1732112

Calcular matriz de distancias

m.distancia <- get_dist(colmenas, method = "euclidean") 
fviz_dist(m.distancia, gradient = list(low = "blue", mid = "white", high = "red"))

Estimar el número de clusters

fviz_nbclust(colmenas, kmeans, method = "wss")

fviz_nbclust(colmenas, kmeans, method = "silhouette")

fviz_nbclust(colmenas, kmeans, method = "gap_stat")

Cálculo de 4 clusters

k4 <- kmeans(colmenas, centers = 4, nstart = 25)
k4
## K-means clustering with 4 clusters of sizes 1, 3, 7, 8
## 
## Cluster means:
##      Fecha Colmenas
## 1 2018.000  2172107
## 2 2014.000  1977399
## 3 2009.571  1862757
## 4 2005.500  1756073
## 
## Clustering vector:
##  [1] 3 3 4 4 4 4 4 4 4 4 3 3 3 2 2 2 3 3 1
## 
## Within cluster sum of squares by cluster:
## [1]          0 3618961631 2172336871 4669670040
##  (between_SS / total_SS =  95.5 %)
## 
## Available components:
## 
## [1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss"
## [6] "betweenss"    "size"         "iter"         "ifault"
str(k4)
## List of 9
##  $ cluster     : int [1:19] 3 3 4 4 4 4 4 4 4 4 ...
##  $ centers     : num [1:4, 1:2] 2018 2014 2010 2006 2172107 ...
##   ..- attr(*, "dimnames")=List of 2
##   .. ..$ : chr [1:4] "1" "2" "3" "4"
##   .. ..$ : chr [1:2] "Fecha" "Colmenas"
##  $ totss       : num 2.35e+11
##  $ withinss    : num [1:4] 0.00 3.62e+09 2.17e+09 4.67e+09
##  $ tot.withinss: num 1.05e+10
##  $ betweenss   : num 2.24e+11
##  $ size        : int [1:4] 1 3 7 8
##  $ iter        : int 2
##  $ ifault      : int 0
##  - attr(*, "class")= chr "kmeans"

Gráfico de clusters

fviz_cluster(k4, data = colmenas)

fviz_cluster(k4, data = colmenas, ellipse.type = "euclid",repel = TRUE,star.plot = TRUE) #ellipse.type= "t", "norm", "euclid"
## Too few points to calculate an ellipse
## Too few points to calculate an ellipse

fviz_cluster(k4, data = colmenas, ellipse.type = "norm")
## Too few points to calculate an ellipse
## Too few points to calculate an ellipse

fviz_cluster(k4, data = colmenas, ellipse.type = "norm",palette = "Set2", ggtheme = theme_minimal())
## Too few points to calculate an ellipse
## Too few points to calculate an ellipse

Dendograma de clusters

res4 <- hcut(colmenas, k = 4, stand = TRUE)
fviz_dend(res4, rect = TRUE, cex = 0.5,
          k_colors = c("red","#2E9FDF","green","orange"))

Trabajar con los clusters

colmenas %>%
  mutate(Cluster = k4$cluster) %>%
  group_by(Cluster) %>%
  summarise_all("mean")
## # A tibble: 4 x 3
##   Cluster Fecha Colmenas
## *   <int> <dbl>    <dbl>
## 1       1 2018  2172107 
## 2       2 2014  1977399.
## 3       3 2010. 1862757.
## 4       4 2006. 1756073.
colmenas1 <- colmenas
colmenas1$clus<-as.numeric(k4$cluster)
colmenas1
##    Fecha Colmenas clus
## 1   2000  1875731    3
## 2   2001  1862372    3
## 3   2002  1783854    4
## 4   2003  1727234    4
## 5   2004  1745078    4
## 6   2005  1732112    4
## 7   2006  1747033    4
## 8   2007  1741040    4
## 9   2008  1797478    4
## 10  2009  1774757    4
## 11  2010  1842130    3
## 12  2011  1847667    3
## 13  2012  1898239    3
## 14  2013  1933105    2
## 15  2014  1981162    2
## 16  2015  2017931    2
## 17  2016  1859350    3
## 18  2017  1853807    3
## 19  2018  2172107    1
colmenas <- scale(colmenas1)
colmenas <- as.data.frame(colmenas1)
colmenas$clus<-as.factor(k4$cluster)
colmenas
##    Fecha Colmenas clus
## 1   2000  1875731    3
## 2   2001  1862372    3
## 3   2002  1783854    4
## 4   2003  1727234    4
## 5   2004  1745078    4
## 6   2005  1732112    4
## 7   2006  1747033    4
## 8   2007  1741040    4
## 9   2008  1797478    4
## 10  2009  1774757    4
## 11  2010  1842130    3
## 12  2011  1847667    3
## 13  2012  1898239    3
## 14  2013  1933105    2
## 15  2014  1981162    2
## 16  2015  2017931    2
## 17  2016  1859350    3
## 18  2017  1853807    3
## 19  2018  2172107    1
colmenas$clus<-factor(colmenas$clus)
data_long <- gather(colmenas, caracteristica, valor, Fecha:Colmenas, factor_key=TRUE)
data_long
##    clus caracteristica   valor
## 1     3          Fecha    2000
## 2     3          Fecha    2001
## 3     4          Fecha    2002
## 4     4          Fecha    2003
## 5     4          Fecha    2004
## 6     4          Fecha    2005
## 7     4          Fecha    2006
## 8     4          Fecha    2007
## 9     4          Fecha    2008
## 10    4          Fecha    2009
## 11    3          Fecha    2010
## 12    3          Fecha    2011
## 13    3          Fecha    2012
## 14    2          Fecha    2013
## 15    2          Fecha    2014
## 16    2          Fecha    2015
## 17    3          Fecha    2016
## 18    3          Fecha    2017
## 19    1          Fecha    2018
## 20    3       Colmenas 1875731
## 21    3       Colmenas 1862372
## 22    4       Colmenas 1783854
## 23    4       Colmenas 1727234
## 24    4       Colmenas 1745078
## 25    4       Colmenas 1732112
## 26    4       Colmenas 1747033
## 27    4       Colmenas 1741040
## 28    4       Colmenas 1797478
## 29    4       Colmenas 1774757
## 30    3       Colmenas 1842130
## 31    3       Colmenas 1847667
## 32    3       Colmenas 1898239
## 33    2       Colmenas 1933105
## 34    2       Colmenas 1981162
## 35    2       Colmenas 2017931
## 36    3       Colmenas 1859350
## 37    3       Colmenas 1853807
## 38    1       Colmenas 2172107
ggplot(data_long, aes(as.factor(x = caracteristica), y = valor,group=clus, colour = clus)) + 
  stat_summary(fun = mean, geom="pointrange", size = 1) +
  stat_summary(geom="line")
## No summary function supplied, defaulting to `mean_se()`
## Warning: Removed 8 rows containing missing values (geom_segment).

Conclusiones

  • En base a este análisis, pudimos observar que el uso de pesticidas ha incrementado bastante a lo largo de los últimos años, lo cual es un factor que, como ya se mencionó, influye mucho en la muerte de las abejas.

  • Se podrían tomar ciertas medidas como utilizar otros tipos de pesticidas que no sean tan dañinos, disminuir el desarrollo de la agricultura intensiva y crear técnicas de mantenimiento de las áreas naturales y conservación de las abejas.