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
¿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)
colmenas2ggplotly(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.