U1A10

Caso de Estudio 4: Abejas

Introducción

En este documento estaremos explicando por que las abejas están en constante descenso de su existencia en México, a pesar de lo que presentemos en este documento la extinción de las abejas no se termina de explicar por ningún factor en específico, la inminente extinción de las abejas es causada por un sin número de factores algunos de los cuales estaremos analizandolos en este reporte

Abejas

Antecedentes

De acuerdo con estadísticas de GreenPeace el 70% de las plantas de consumo humano dependen de la polinización hecha por las abejas y otros insectos, entre los alimentos que las abejas ayudan a producir se encuentran la fresa, el pepino, las almendras, las manzanas, los tomates entre otros.

La cuestión es que estos insectos han existido desde hace aproximadamente 34 millones de años de acuerdo con la investigación de Deborah Smith y Lynn Villafuerte, y pueden ser encontrados prácticamente en todo el mundo, con excepción de los casquetes polares, además han sido domesticadas y cultivadas para la producción de miel, cera, polen, propóleo y también para la polinización desde tiempos tan remotos como el periodo neolítico entre 7 y 8mil años de antigüedad.

Recuperado de

Los plaguicidas

Como bien sabemos los insecticidas y plaguicidas mantienen a la agricultura a salvo, deshaciéndose así de las plagas como son los gusanos, el minador de hoja, piral, escarabajo de alambre, pulgones entre muchos otros más. Esto comienza a tener sus efectos colaterales cuando se introducen las abejas en los mismos espacios rociados con plaguicidas, un estudio probó que los plaguicidas que contienen “neonicotinoides” (que son la mayoría delos que se usan en el campo), son los causante de que las abejas tengan efectos negativos sobre (Koricheva, J. 2018, 30 abril): * Abundancia * Comportamiento * Reproducción * Sobrevivencia

Sabiendo que los neonicotinoides afectan directamente a las abejas, ya se han hecho movimientos para que se dejen de usar conforme el tiempo pasa.

Métodos

Importacion de paquetes

library(pacman)
p_load(rmdformats,readr,readxl,plotly,gganimate,DT,fdth,xfun,cluster,factoextra,NbClust)

Importacion de datos

# Datos sobre cuántas colmenas cada año desde 1961 hasta 2019 en el país de México
COLMENAS <- read_csv("colmenas.csv")
## Parsed with column specification:
## cols(
##   Year = col_double(),
##   Value = col_double()
## )
# Datos de cambio de temperaturas al pasar de los años
temperatura <- read_csv("variacion_en_temperatura_global.csv")
## Parsed with column specification:
## cols(
##   ANIO = col_double(),
##   VariacionTemperatura = col_double()
## )
# Datos de CO2 en el mundo
CO2 <- read_csv("CO2.csv")
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   `Country Name` = col_character(),
##   `Country Code` = col_character(),
##   `Indicator Name` = col_character(),
##   `Indicator Code` = col_character(),
##   `2017` = col_logical(),
##   `2018` = col_logical(),
##   `2019` = col_logical(),
##   `2020` = col_logical()
## )
## See spec(...) for full column specifications.
# Datos de plaguicidas
plaguicidas <- read_csv("Plaguicidas.csv")
## Parsed with column specification:
## cols(
##   Año = col_double(),
##   ValorToneladas = col_double()
## )

Filtrado de datos

# Filtrado de datos para el CO2 solo para México
CO2 <- t(CO2[CO2$`Country Name`=="México", ])

CO2 <- CO2[35:62,]

CO2 <- as.numeric(CO2)


# Filtrado de datos para Las colmenas
COLMENAS <- COLMENAS[30:57,]

# Filtrado de datos para la variación de las temperaturas al pasar del tiempo
temperatura <- temperatura[111:138, ]

# Filtrado de datos para los plaguicidas
plaguicidas <- plaguicidas[1:28,]

Creación de un data frame

# Variable para temperaturas
temp <- temperatura$VariacionTemperatura

# Variable para colmenas
colmenas <- COLMENAS$Value

# Variable para plaguicidas
plaguicidas <- plaguicidas$ValorToneladas

# Variable de fechas
# Formato: YYYY/MM/DD
Fecha <- temperatura$ANIO

# Date frame
posiblesCausas <- data.frame(Fecha,plaguicidas,colmenas,temp)

Descarga de código

xfun::embed_file("U1A10.Rmd")
Download U1A10.Rmd

Descarga de datos

Colmenas

xfun::embed_file("colmenas.csv")
Download colmenas.csv

Clima

xfun::embed_file("variacion_en_temperatura_global.csv")
Download variacion_en_temperatura_global.csv

Visualización de datos

Visualización en tabla (Tabla 1)

Aquí podemos ver los datos que se han sacado desde el año desede 1961 hasta 2019 de cuantas colmenas ha habido en ese año. De aqui nos podemos darnos cuenta que hay un cierto período de tiempo en el que la cantidad de colmenas disminuye y luego comienza a aumentar nuevamente

datatable(COLMENAS)

Emisiones de CO2 en México

co2mex <- CO2
CO2 <- as.numeric(co2mex)
co2mexframe = data.frame(co2mex)
Fecha = seq(from = as.Date("1990-01-01"), to = as.Date("2017-01-01"), by = 'year')

co2plot = ggplot(data=co2mexframe,)+
  geom_line(aes(x=Fecha,y=CO2),color="red")+
  labs(title="Emisiones de CO2 en México", x="Año",y="Emision" )

ggplotly(co2plot)

En esta gráfica podemos observar el aumento tan drástico que tuvieron las concentraciones de CO2 en México desde 1990 hasta 2016, lo cual es preocupante por que daña gravente los ecosistemas existentes en la tierra en los cuales se desarrollan las abejas.

Habitats y sus cambios por el calentamiento global

Una explicación hacia el por que las abejas están desapareciendo es gracias a el cambio en sus habitats donde frecuentan y el aumento del calentamiento en el ambiente conforme pasan los años, las abejas soportan la temperatura máxima de 35 grados centrigrados, una temperatura muy normal en los últimos años en México. Los 35 grados a su vez son la temperatura máxima que pueden soportar los girasoles en tiempos de verano y es una temperatura no ideal para que la polinización suceda(G.D.G.C.Y.S.R.H.K.B.S. (2020, 30 junio))

Gráfica 1 (Gráfica 1)

ggplotly(ggplot(data=temperatura)+
         geom_line(aes(x = ANIO, y =VariacionTemperatura),color="blue")+
         labs(title="Temperaturas", subtitle="Fuente: Quien sabe", x="Año",y="Temperatura"))

Gráfica de transición (Gráfica 2)

Aqui con esta gráfica animada podemos ver la caída repentina de la colmena y luego el aumento que finalmente comenzó a caer nuevamente alrededor del año 1998 y comenzó a aumentar nuevamente alrededor del 2010.

ggplot(data=COLMENAS)+
         geom_line(aes(x = Year, y = Value),color="blue")+
         labs(title="Población de abejas en mexico", subtitle="Fuente: http://www.fao.org/faostat/en/#data/QA", x="Fecha",y="Cantidad de colmenas")+
  transition_reveal(Year)

Visualización en gráfica interactiva (Gráfica 3)

Aqui con esta con este gráfico interactivo podemos consultar fácilmente el número de colmenas en un año elegido para poder comparar qué tan grande es la diferencia para determinar el impacto

ggplotly(ggplot(data=COLMENAS)+
         geom_line(aes(x = Year, y = Value),color="blue")+
         labs(title="Población de abejas en mexico", subtitle="Fuente: http://www.fao.org/faostat/en/#data/QA", x="Fecha",y="Cantidad de colmenas"))

Visualización de todas las posibles acusas en una gráfica (Gráfica 5)

ggplotly(ggplot(posiblesCausas)+
  geom_line(aes(x = Fecha, y = colmenas,colour="Colmenas"))+
  geom_line(aes(x = Fecha, y = plaguicidas,colour="Plaguicidas"))+
  geom_line(aes(x = Fecha, y = temp,colour="Temperaturas"))+
  geom_line(aes(x = Fecha, y = CO2,colour="CO2")))

Normalización de data frame

datos <- scale(posiblesCausas[2:4])

Normalización de data frame

causas <- read_csv("causas.csv")
## Parsed with column specification:
## cols(
##   Fecha = col_double(),
##   plaguicidas = col_double(),
##   colmenas = col_double(),
##   temp = col_double()
## )
rownames(causas) <- c(seq(1990,2017))
## Warning: Setting row names on a tibble is deprecated.
datos <- scale(causas)

Calculación de la matriz de distancia

matrizDistancia <- get_dist(datos, method = "euclidean")
ggplotly(fviz_dist(matrizDistancia,gradient=list(low="blue", mid="white", high="red")))
ggplotly(fviz_nbclust(datos,kmeans,method="wss"))
## Warning: `group_by_()` is deprecated as of dplyr 0.7.0.
## Please use `group_by()` instead.
## See vignette('programming') for more help
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_warnings()` to see where this warning was generated.
resumclust <- NbClust(datos, distance="euclidean",min.nc = 2,max.nc = 10,method="kmeans",index = "alllong")

## *** : The Hubert index is a graphical method of determining the number of clusters.
##                 In the plot of Hubert index, we seek a significant knee that corresponds to a 
##                 significant increase of the value of the measure i.e the significant peak in Hubert
##                 index second differences plot. 
## 

## *** : The D index is a graphical method of determining the number of clusters. 
##                 In the plot of D index, we seek a significant knee (the significant peak in Dindex
##                 second differences plot) that corresponds to a significant increase of the value of
##                 the measure. 
##  
## ******************************************************************* 
## * Among all indices:                                                
## * 3 proposed 2 as the best number of clusters 
## * 13 proposed 3 as the best number of clusters 
## * 1 proposed 5 as the best number of clusters 
## * 2 proposed 6 as the best number of clusters 
## * 1 proposed 7 as the best number of clusters 
## * 7 proposed 10 as the best number of clusters 
## 
##                    ***** Conclusion *****                            
##  
## * According to the majority rule, the best number of clusters is  3 
##  
##  
## *******************************************************************
ggplotly(fviz_nbclust(resumclust))
## Among all indices: 
## ===================
## * 2 proposed  0 as the best number of clusters
## * 1 proposed  1 as the best number of clusters
## * 3 proposed  2 as the best number of clusters
## * 13 proposed  3 as the best number of clusters
## * 1 proposed  5 as the best number of clusters
## * 2 proposed  6 as the best number of clusters
## * 1 proposed  7 as the best number of clusters
## * 7 proposed  10 as the best number of clusters
## 
## Conclusion
## =========================
## * According to the majority rule, the best number of clusters is  3 .
k2 <- kmeans(datos,centers=2,nstart = 25)
k2
## K-means clustering with 2 clusters of sizes 13, 15
## 
## Cluster means:
##        Fecha plaguicidas   colmenas       temp
## 1  0.9117460   0.9827378 -0.3514536  0.7487835
## 2 -0.7901799  -0.8517061  0.3045931 -0.6489457
## 
## Clustering vector:
## 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 
##    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    1 
## 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 
##    1    1    1    1    1    1    1    1    1    1    1    1 
## 
## Within cluster sum of squares by cluster:
## [1] 14.64794 33.14037
##  (between_SS / total_SS =  55.8 %)
## 
## Available components:
## 
## [1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss"
## [6] "betweenss"    "size"         "iter"         "ifault"
str(k2)
## List of 9
##  $ cluster     : Named int [1:28] 2 2 2 2 2 2 2 2 2 2 ...
##   ..- attr(*, "names")= chr [1:28] "1990" "1991" "1992" "1993" ...
##  $ centers     : num [1:2, 1:4] 0.912 -0.79 0.983 -0.852 -0.351 ...
##   ..- attr(*, "dimnames")=List of 2
##   .. ..$ : chr [1:2] "1" "2"
##   .. ..$ : chr [1:4] "Fecha" "plaguicidas" "colmenas" "temp"
##  $ totss       : num 108
##  $ withinss    : num [1:2] 14.6 33.1
##  $ tot.withinss: num 47.8
##  $ betweenss   : num 60.2
##  $ size        : int [1:2] 13 15
##  $ iter        : int 1
##  $ ifault      : int 0
##  - attr(*, "class")= chr "kmeans"
ggplotly(fviz_cluster(k2,data=datos))

Conclusión

Bibliografía

G.D.G.C.Y.S.R.H.K.B.S. (2020, 30 junio). INTERACCIONES ENTRE PLANTAS Y POLINIZADORES A ALTAS TEMPERATURAS. koppert. https://www.koppert.com/content/global/docs/Pollination_White_paper/20200418_Koppert_-_White_paper_Plant_Pollination_interactions_in_hight_temperatures_ES_DEF_HR.pdf Koricheva, J. (2018, 30 abril). Neonicotinoid ban—how meta-analysis helped show pesticides do harm bees. phys.org. https://phys.org/news/2018-04-neonicotinoid-banhow-meta-analysis-pesticides-bees.html