Punto 1 – Datos Salinidad

Para estudiar la relación entre ciertas características del suelo y la producción de biomasa (gr) de una planta forrajera natural se obtuvieron 45 muestras en diferentes ambientes, y en cada muestra se estimó la biomasa (respuesta Y) y se registraron las características (covariables X) del suelo en el que crecía (pH, Salinidad, Zinc y Potasio).

load("C:/Users/Estudiante/Downloads/Salinidad.RData")
library(ggplot2)

str(Salinidad)
## 'data.frame':    45 obs. of  5 variables:
##  $ Biomasa  : num  765 954 828 755 896 ...
##  $ pH       : num  5 4.7 4.2 4.4 5.55 5.5 4.25 4.45 4.75 4.6 ...
##  $ Salinidad: int  33 35 32 30 33 33 36 30 38 30 ...
##  $ Zinc     : num  16.5 14 15.3 17.3 22.3 ...
##  $ Potasio  : num  1442 1299 1154 1045 522 ...
load("C:/Users/Estudiante/Downloads/Salinidad.RData")
print(ls())
## [1] "Salinidad"
str(Salinidad)
## 'data.frame':    45 obs. of  5 variables:
##  $ Biomasa  : num  765 954 828 755 896 ...
##  $ pH       : num  5 4.7 4.2 4.4 5.55 5.5 4.25 4.45 4.75 4.6 ...
##  $ Salinidad: int  33 35 32 30 33 33 36 30 38 30 ...
##  $ Zinc     : num  16.5 14 15.3 17.3 22.3 ...
##  $ Potasio  : num  1442 1299 1154 1045 522 ...
  1. Realice un análisis exploratorio univariado para cada característica e interprete.
summary(Salinidad)
##     Biomasa             pH          Salinidad          Zinc        
##  Min.   : 369.8   Min.   :3.200   Min.   :24.00   Min.   : 0.2105  
##  1st Qu.: 654.8   1st Qu.:3.450   1st Qu.:27.00   1st Qu.:13.9852  
##  Median : 991.8   Median :4.450   Median :30.00   Median :19.2420  
##  Mean   :1082.2   Mean   :4.609   Mean   :30.27   Mean   :17.8308  
##  3rd Qu.:1346.9   3rd Qu.:5.350   3rd Qu.:33.00   3rd Qu.:22.6758  
##  Max.   :2337.3   Max.   :7.450   Max.   :38.00   Max.   :31.2865  
##     Potasio      
##  Min.   : 350.7  
##  1st Qu.: 527.0  
##  Median : 773.3  
##  Mean   : 797.4  
##  3rd Qu.: 954.1  
##  Max.   :1441.7
data.frame(
  Variable = names(Salinidad)[1:5],
  Mean = sapply(Salinidad[1:5], mean),
  Median = sapply(Salinidad[1:5], median),
  Standard_Deviation = sapply(Salinidad[1:5], sd),
  Minimum = sapply(Salinidad[1:5], min),
  Maximum = sapply(Salinidad[1:5], max),
  IQR = sapply(Salinidad[1:5], IQR)
)
##            Variable        Mean  Median Standard_Deviation  Minimum   Maximum
## Biomasa     Biomasa 1082.172644 991.829         546.287433 369.8230 2337.3260
## pH               pH    4.608889   4.450           1.254731   3.2000    7.4500
## Salinidad Salinidad   30.266667  30.000           3.719726  24.0000   38.0000
## Zinc           Zinc   17.830796  19.242           8.274169   0.2105   31.2865
## Potasio     Potasio  797.377778 773.300         297.576022 350.7300 1441.6700
##                IQR
## Biomasa   692.0550
## pH          1.9000
## Salinidad   6.0000
## Zinc        8.6906
## Potasio   427.1400

La tabla presenta las principales medidas descriptivas de las variables analizadas, incluyendo medidas de tendencia central y de dispersión. En términos generales, se observa variabilidad entre las muestras para las características del suelo y la biomasa. Para complementar esta descripción numérica, en los siguientes diagramas se presentan los histogramas y diagramas de caja de cada variable, los cuales permiten visualizar la distribución de los datos, su dispersión y la presencia de posibles valores atípicos.

##Biomasa

ggplot(Salinidad, aes(x = Biomasa)) +
  geom_histogram(bins = 7) +
  labs(
    title = "Distribución de la biomasa",
    x = "Biomasa (g)",
    y = "Frecuencia"
  ) +
  theme_minimal()

ggplot(Salinidad, aes(y = Biomasa)) +
  geom_boxplot() +
  labs(
    title = "Distribución de la biomasa",
    y = "Biomasa (g)"
  ) +
  theme_minimal()

La producción de biomasa varía considerablemente entre los ambientes estudiados, con valores entre 369,82 y 2337,33 g. La media (1082,17 g) es ligeramente mayor que la mediana (991,83 g), lo que indica una leve asimetría hacia valores altos. No se observan valores atípicos extremos.

##pH

ggplot(Salinidad, aes(x = pH)) +
  geom_histogram(bins = 7) +
  labs(
    title = "Distribución del pH en el suelo",
    x = "pH",
    y = "Frecuencia"
  ) +
  theme_minimal()

ggplot(Salinidad, aes(y = pH)) +
  geom_boxplot() +
  labs(
    title = "Distribución del pH en el suelo",
    y = "pH"
  ) +
  theme_minimal()

El pH del suelo presenta valores entre 3,20 y 7,45, con una media de 4,61, lo que indica que predominan suelos ácidos en los ambientes estudiados. La variabilidad observada muestra que las condiciones de acidez no son iguales entre las muestras. No se observan valores atípicos extremos en el boxplot.

##Salinidad

ggplot(Salinidad, aes(x = Salinidad)) +
  geom_histogram(bins = 7) +
  labs(
    title = "Distribución de la salinidad del suelo",
    x = "Salinidad",
    y = "Frecuencia"
  ) +
  theme_minimal()

ggplot(Salinidad, aes(y = Salinidad)) +
  geom_boxplot() +
  labs(
    title = "Distribución de la salinidad del suelo",
    y = "Salinidad"
  ) +
  theme_minimal()

La salinidad del suelo en los diferentes ambientes estudiados presentó valores entre 24 y 38, con una media de 30,27 y una mediana de 30. Esto indica que las condiciones de salinidad varían entre los ambientes donde crece la planta forrajera, aunque los valores se concentran alrededor de 30. La cercanía entre la media y la mediana sugiere una distribución relativamente equilibrada. No se observan valores atípicos evidentes.

##Zinc

ggplot(Salinidad, aes(x = Zinc)) +
  geom_histogram(bins = 7) +
  labs(
    title = "Distribución del zinc en el suelo",
    x = "Zinc",
    y = "Frecuencia"
  ) +
  theme_minimal()

ggplot(Salinidad, aes(y = Zinc)) +
  geom_boxplot() +
  labs(
    title = "Distribución del zinc en el suelo",
    y = "Zinc"
  ) +
  theme_minimal()

La concentración de zinc en el suelo presentó valores entre 0,21 y 31,29, con una media de 17,83 y una mediana de 19,24. Esto indica que existe una variación considerable en la concentración de zinc entre los diferentes ambientes donde crece la planta forrajera. Se observa además un valor muy bajo (0,21) en comparación con el resto de las muestras, que se identifica como un posible valor atípico en el diagrama de caja.

##Potasio

ggplot(Salinidad, aes(x = Potasio)) +
  geom_histogram(bins = 7) +
  labs(
    title = "Distribución de potasio en el suelo",
    x = "Potasio",
    y = "Frecuencia"
  ) +
  theme_minimal()

ggplot(Salinidad, aes(y = Potasio)) +
  geom_boxplot() +
  labs(
    title = "Distribución de potasio en el suelo",
    y = "Potasio"
  ) +
  theme_minimal()

La concentración de potasio en el suelo presentó valores entre 350,73 y 1441,67, con una media de 797,38 y una mediana de 773,30. Esto indica que existe una variación considerable en la disponibilidad de potasio entre los diferentes ambientes donde crece la planta forrajera. La media ligeramente superior a la mediana sugiere una leve asimetría hacia valores altos. No se observan valores atípicos evidentes en el diagrama de caja.

  1. Realice un análisis exploratorio bivariado que permita conocer cómo es la relación entre la biomasa y las covariables pH, Salinidad y Zinc (determine cuáles variables son las que presentan mayor relación con la biomasa).
ggplot(Salinidad, aes(x = pH, y = Biomasa)) +
  geom_point() +
  geom_smooth(method = "lm", se = TRUE) +
  labs(
    title = "Relación entre pH y biomasa",
    x = "pH del suelo",
    y = "Biomasa (g)"
  ) +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

Existe una fuerte relación lineal positiva; a medida que el suelo se vuelve menos ácido (aumenta el pH), la planta forrajera incrementa notablemente su producción de biomasa. Esto sugiere que el rango de pH más alto (neutro) ofrece las condiciones óptimas para la absorción de nutrientes y el desarrollo vegetal de esta especie.

ggplot(Salinidad, aes(x = Salinidad, y = Biomasa)) +
  geom_point() +
  geom_smooth(method = "lm", se = TRUE) +
  labs(
    title = "Relación entre salinidad y biomasa",
    x = "Salinidad del suelo",
    y = "Biomasa (g)"
  ) +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

No existe una relación lineal entre ambas variables, reflejado en una línea de tendencia plana y puntos totalmente dispersos. En el rango evaluado, los niveles de salinidad del suelo no actúan como un factor limitante ni favorecedor para el rendimiento de la biomasa de esta forrajera.

ggplot(Salinidad, aes(x = Zinc, y = Biomasa)) +
  geom_point() +
  geom_smooth(method = "lm", se = TRUE) +
  labs(
    title = "Relación entre zinc y biomasa",
    x = "Zinc en el suelo",
    y = "Biomasa (g)"
  ) +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

Muestra una fuerte relación lineal negativa. El incremento en la concentración de Zinc en el suelo provoca una caída drástica en la producción de biomasa, lo que indica que niveles altos de este elemento resultan perjudiciales o tóxicos para el crecimiento de la planta.

cor(Salinidad$Biomasa, Salinidad$pH)
## [1] 0.9281023
cor(Salinidad$Biomasa, Salinidad$Salinidad)
## [1] -0.06657756
cor(Salinidad$Biomasa, Salinidad$Zinc)
## [1] -0.7814625

Tanto en los diagramas, como en la correlación se observa que la biomasa presenta una relación positiva muy fuerte con el pH del suelo (r = 0,928), lo que indica que, en estas muestras, los valores mayores de pH se asocian con mayores valores de biomasa. Por otro lado, la salinidad presenta una relación prácticamente nula con la biomasa (r = −0,067). Finalmente, el zinc presenta una relación negativa fuerte con la biomasa (r = −0,781), indicando que los valores mayores de zinc se asocian con menores valores de biomasa.

  1. A partir de la variable que, según el literal (b), presenta mayor relación con la biomasa, categorícela en tres niveles (por ejemplo bajo/medio/alto, usando terciles u otro criterio que usted justifique) y evalúe mediante un ANOVA de una vía si el nivel de dicha variable genera diferencias significativas en la biomasa. Verifique los supuestos del modelo (normalidad de los residuales y homogeneidad de varianzas) y realice las comparaciones post-hoc pertinentes (prueba de LSD), interpretando cuáles niveles difieren entre sí.
cortes <- quantile(
  Salinidad$pH,
  probs = c(0, 1/3, 2/3, 1)
)

cortes
##        0% 33.33333% 66.66667%      100% 
##  3.200000  3.883333  4.900000  7.450000
Salinidad$pH_nivel <- cut(
  Salinidad$pH,
  breaks = cortes,
  include.lowest = TRUE,
  labels = c("Bajo", "Medio", "Alto")
)

table(Salinidad$pH_nivel)
## 
##  Bajo Medio  Alto 
##    15    15    15
aggregate(Biomasa ~ pH_nivel, data = Salinidad, 
          FUN = mean)
##   pH_nivel   Biomasa
## 1     Bajo  593.0233
## 2    Medio 1048.1093
## 3     Alto 1605.3853
ggplot(Salinidad, aes(x = pH_nivel, y = Biomasa)) +
  geom_boxplot() +
  labs(
    title = "Biomasa según nivel de pH",
    x = "Nivel de pH",
    y = "Biomasa (g)"
  ) +
  theme_minimal()

Se observa una tendencia de aumento de la biomasa a medida que aumenta el nivel de pH. El nivel bajo presenta los valores de biomasa más bajos, mientras que el nivel alto presenta los valores más elevados. También se observa una mayor dispersión de los datos en los niveles medio y alto en comparación con el nivel bajo. En el nivel bajo se identifica un posible valor atípico. Estas diferencias visuales sugieren que la biomasa podría variar entre los niveles de pH; sin embargo, se requiere realizar el ANOVA y verificar para determinar si las diferencias son estadísticamente significativas.

modelo <- aov(Biomasa ~ pH_nivel, data = Salinidad)

summary(modelo)
##             Df  Sum Sq Mean Sq F value   Pr(>F)    
## pH_nivel     2 7712683 3856342   29.89 8.45e-09 ***
## Residuals   42 5418235  129006                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

El análisis de varianza mostró diferencias estadísticamente significativas en la producción de biomasa entre los tres niveles de pH (F(2,42) = 29,89; p < 0,001). Por lo tanto, existen diferencias en la biomasa promedio entre al menos dos de los niveles de pH. Las medias observadas fueron de 593,02 g para pH bajo, 1048,11 g para pH medio y 1605,39 g para pH alto. Para determinar entre qué niveles específicos se encuentran las diferencias se realiza a continuación una prueba pos-anova.

shapiro.test(residuals(modelo))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelo)
## W = 0.97316, p-value = 0.3749

La prueba de Shapiro-Wilk mostró que los residuales presentan una distribución compatible con la normalidad (W = 0,973; p = 0,375). Debido a que p > 0,05, no se rechaza el supuesto de normalidad de los residuales.

library(lawstat)

levene.test(Salinidad$Biomasa, Salinidad$pH_nivel)
## 
##  Modified robust Brown-Forsythe Levene-type test based on the absolute
##  deviations from the median
## 
## data:  Salinidad$Biomasa
## Test Statistic = 8.6753, p-value = 0.000702

La prueba de Levene tipo Brown-Forsythe mostró diferencias significativas entre las varianzas de los grupos (estadístico = 8,675; p < 0,001). Por lo tanto, se rechaza el supuesto de homogeneidad de varianzas.

oneway.test(Biomasa ~ pH_nivel, data = Salinidad, var.equal = FALSE)
## 
##  One-way analysis of means (not assuming equal variances)
## 
## data:  Biomasa and pH_nivel
## F = 34.727, num df = 2.000, denom df = 24.736, p-value = 6.58e-08

Debido a que no se cumplió el supuesto de homogeneidad de varianzas, se realizó un ANOVA de Welch y el análisis mostró diferencias estadísticamente significativas en la biomasa entre los niveles de pH (F(2, 24,736) = 34,727; p < 0,001). Por lo tanto, existen diferencias en la biomasa promedio entre al menos dos niveles de pH.

library(rstatix)
## 
## Adjuntando el paquete: 'rstatix'
## The following object is masked from 'package:stats':
## 
##     filter
games_howell_test(Salinidad, Biomasa ~ pH_nivel)
## # A tibble: 3 × 8
##   .y.     group1 group2 estimate conf.low conf.high      p.adj p.adj.signif
## * <chr>   <chr>  <chr>     <dbl>    <dbl>     <dbl>      <dbl> <chr>       
## 1 Biomasa Bajo   Medio      455.     265.      645. 0.00000977 ****        
## 2 Biomasa Bajo   Alto      1012.     633.     1392. 0.00000929 ****        
## 3 Biomasa Medio  Alto       557.     164.      950. 0.00507    **

Debido a que no se cumplió el supuesto de homogeneidad de varianzas, evidenciado por la prueba de Levene/Brown-Forsythe (p = 0,000702), se seleccionó la prueba de Games-Howell como alternativa al LSD, ya que permite realizar comparaciones múltiples cuando las varianzas entre los grupos son desiguales. Se encontraron diferencias significativas entre los tres niveles de pH: bajo vs. medio (p < 0,001), bajo vs. alto (p < 0,001) y medio vs. alto (p = 0,005). Las medias de biomasa fueron de 593,02 g para el nivel bajo, 1048,11 g para el nivel medio y 1605,39 g para el nivel alto. En consecuencia, los tres niveles presentan diferencias significativas entre sí, con mayores valores promedio de biomasa a medida que aumenta el nivel de pH.

Punto 2 – Datos Moluscos

Punto 2 – Datos Moluscos Dos tipos de moluscos A y B fueron sometidos a tres concentraciones distintas de agua de mar (100%, 75% y 50%) y se observó el consumo de oxígeno midiendo la proporción de O2 por unidad de peso seco del molusco.

load("C:/Users/Estudiante/Downloads/moluscos.RData")
library(ggplot2)

str(BD_moluscos)
## tibble [48 × 3] (S3: tbl_df/tbl/data.frame)
##  $ c_agua : num [1:48] 100 100 100 100 100 100 100 100 100 100 ...
##  $ molusco: chr [1:48] "A" "A" "A" "A" ...
##  $ cons_o : num [1:48] 7.16 8.26 6.78 14 13.6 11.1 8.93 9.66 6.14 6.14 ...
  1. Realice un análisis exploratorio univariado para cada característica e interprete.
library(dplyr)
## 
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
tabla_consumo <- BD_moluscos %>%
  summarise(
    Media = mean(cons_o),
    Mediana = median(cons_o),
    Desviacion_estandar = sd(cons_o),
    Minimo = min(cons_o),
    Maximo = max(cons_o)
  )

tabla_consumo
## # A tibble: 1 × 5
##   Media Mediana Desviacion_estandar Minimo Maximo
##   <dbl>   <dbl>               <dbl>  <dbl>  <dbl>
## 1  9.30     9.7                3.68    1.8   18.8
ggplot(BD_moluscos, aes(y = cons_o)) +
  geom_boxplot() +
  labs(
    title = "Distribución del consumo de oxígeno",
    y = "Consumo de oxígeno"
  ) +
  theme_minimal()

El consumo de oxígeno de los moluscos presentó una media de 9,30 y una mediana de 9,70 unidades, con una desviación estándar de 3,68. Los valores oscilaron entre 1,80 y 18,80 unidades, indicando una variabilidad considerable entre los individuos. El diagrama de caja muestra que el 50 % central de las observaciones se encuentra aproximadamente entre 6,3 y 11,2 unidades, y evidencia un valor atípico alto cercano a 18,5 unidades. En conjunto, los datos muestran variabilidad en el consumo de oxígeno, con cierta tendencia hacia valores altos.

  1. Realice un análisis exploratorio bivariado que permita conocer cómo es el consumo de oxígeno en las distintas concentraciones de agua de mar, y si estas conclusiones son las mismas para cada tipo de molusco.
library(dplyr)

tabla_2b <- BD_moluscos %>%
  group_by(molusco, c_agua) %>%
  summarise(
    n = n(),
    Media = mean(cons_o),
    DE = sd(cons_o),
    .groups = "drop"
  )

tabla_2b
## # A tibble: 6 × 5
##   molusco c_agua     n Media    DE
##   <chr>    <dbl> <int> <dbl> <dbl>
## 1 A           50     8 12.2   3.09
## 2 A           75     8  7.89  2.74
## 3 A          100     8  9.94  2.75
## 4 B           50     8 12.3   3.52
## 5 B           75     8  6.10  2.74
## 6 B          100     8  7.41  2.84
ggplot(BD_moluscos, aes(x = factor(c_agua), y = cons_o)) +
  geom_boxplot() +
  facet_wrap(~ molusco) +
  labs(
    title = "Consumo de oxígeno según concentración de agua y tipo de molusco",
    x = "Concentración de agua (%)",
    y = "Consumo de oxígeno"
  ) +
  theme_minimal()

La tabla y el diagrama de cajas muestran que la concentración de agua de mar se relaciona descriptivamente con el consumo de oxígeno en ambos tipos de moluscos. En los dos casos, el consumo es mayor al 50%, disminuye al 75% y aumenta nuevamente al 100%. A 50%, ambos presentan consumos similares, mientras que a 75% y 100% el molusco A presenta valores mayores que B. Además, se observan algunos valores atípicos altos en el molusco A. En conjunto, los resultados sugieren que la concentración de agua de mar y el tipo de molusco podrían influir en el consumo de oxígeno.

  1. Evalúe mediante un ANOVA de dos vías (factores: tipo de molusco y concentración de agua de mar, incluyendo su interacción) si estos factores afectan significativamente el consumo de oxígeno. Verifique los supuestos del modelo (normalidad de los residuales y homogeneidad de varianzas) e interprete el efecto principal de cada factor y de la interacción. Cuando encuentre diferencias significativas, realice las comparaciones post-hoc pertinentes (prueba de LSD) entre los grupos y concluya.
BD_moluscos$c_agua <- factor(BD_moluscos$c_agua)

modelo_moluscos <- aov(cons_o ~ molusco * c_agua, data = BD_moluscos)

summary(modelo_moluscos)
##                Df Sum Sq Mean Sq F value   Pr(>F)    
## molusco         1   23.2   23.23   2.651    0.111    
## c_agua          2  230.8  115.41  13.171 3.63e-05 ***
## molusco:c_agua  2   15.4    7.68   0.876    0.424    
## Residuals      42  368.0    8.76                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
shapiro.test(residuals(modelo_moluscos))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelo_moluscos)
## W = 0.95824, p-value = 0.08571
library(car)
## Cargando paquete requerido: carData
## 
## Adjuntando el paquete: 'car'
## The following object is masked from 'package:dplyr':
## 
##     recode
## The following object is masked from 'package:lawstat':
## 
##     levene.test
leveneTest(cons_o ~ interaction(molusco, c_agua), 
           data = BD_moluscos)
## Levene's Test for Homogeneity of Variance (center = median)
##       Df F value Pr(>F)
## group  5  0.1723 0.9715
##       42
library(agricolae)

LSD_cagua <- LSD.test(modelo_moluscos, "c_agua", p.adj = "none")

LSD_cagua
## $statistics
##    MSerror Df     Mean      CV  t.value      LSD
##   8.762171 42 9.304792 31.8126 2.018082 2.112028
## 
## $parameters
##         test p.ajusted name.t ntr alpha
##   Fisher-LSD      none c_agua   3  0.05
## 
## $means
##       cons_o      std  r        se       LCL       UCL  Min  Max    Q25    Q50
## 100  8.67125 3.000940 16 0.7400241  7.177821 10.164679 3.68 14.0  6.140  8.595
## 50  12.25062 3.199643 16 0.7400241 10.757196 13.744054 6.38 18.8 10.085 11.455
## 75   6.99250 2.804093 16 0.7400241  5.499071  8.485929 1.80 13.2  5.200  6.430
##         Q75
## 100 10.5750
## 50  14.5000
## 75   8.7675
## 
## $comparison
## NULL
## 
## $groups
##       cons_o groups
## 50  12.25062      a
## 100  8.67125      b
## 75   6.99250      b
## 
## attr(,"class")
## [1] "group"

Los supuestos del ANOVA se cumplieron: normalidad de los residuales (Shapiro-Wilk, p = 0,0857) y homogeneidad de varianzas (Levene, p = 0,9715).

El tipo de molusco no tuvo un efecto significativo sobre el consumo de oxígeno (p = 0,111), mientras que la concentración de agua de mar sí fue significativa (p < 0,001). La interacción tampoco fue significativa (p = 0,424).

La prueba LSD mostró que el consumo a 50% (12,25) fue significativamente mayor que a 75% (6,99) y 100% (8,67), mientras que entre 75% y 100% no hubo diferencias significativas. En conclusión, el consumo de oxígeno varía según la concentración de agua de mar, pero no según el tipo de molusco.

Punto 3 – Datos Biodiversidad

Con el fin de evaluar el efecto del uso del suelo sobre la biodiversidad de anfibios en una reserva forestal, se establecieron parcelas de muestreo en cuatro tipos de hábitat que representan un gradiente de intervención antrópica: bosque primario, bosque secundario, sistema silvopastoril y potrero. En cada una de las 52 parcelas (13 por hábitat) se registró la riqueza de especies (número de especies observadas), el índice de diversidad de Shannon–Wiener y la altitud (m.s.n.m.) del sitio de muestreo. La base de datos se encuentra en el archivo Biodiversidad.RData (objeto BD_biodiversidad).

load("C:/Users/Estudiante/Downloads/biodiversidad.RData")
library(ggplot2)

str(BD_biodiversidad)
## 'data.frame':    52 obs. of  5 variables:
##  $ Parcela: chr  "P001" "P002" "P003" "P004" ...
##  $ Habitat: chr  "Bosque primario" "Bosque primario" "Bosque primario" "Bosque primario" ...
##  $ Riqueza: num  14 14 13 14 10 15 19 16 15 21 ...
##  $ Shannon: num  2.13 2.98 2.07 2.53 2.82 2.75 2.45 1.73 2.04 2.48 ...
##  $ Altitud: num  1478 1477 1505 1395 1494 ...
##  - attr(*, "datalabel")= chr "BD_biodiversidad"
##  - attr(*, "var.labels")= chr [1:5] "" "" "" "" ...
  1. Realice un análisis exploratorio univariado para cada característica (riqueza, diversidad de Shannon y altitud) e interprete.
library(dplyr)

tabla_3a <- BD_biodiversidad %>%
  summarise(
    Media_Riqueza = mean(Riqueza),
    Mediana_Riqueza = median(Riqueza),
    DE_Riqueza = sd(Riqueza),
    Min_Riqueza = min(Riqueza),
    Max_Riqueza = max(Riqueza),
    
    Media_Shannon = mean(Shannon),
    Mediana_Shannon = median(Shannon),
    DE_Shannon = sd(Shannon),
    Min_Shannon = min(Shannon),
    Max_Shannon = max(Shannon),
    
    Media_Altitud = mean(Altitud),
    Mediana_Altitud = median(Altitud),
    DE_Altitud = sd(Altitud),
    Min_Altitud = min(Altitud),
    Max_Altitud = max(Altitud)
  )

tabla_3a
##   Media_Riqueza Mediana_Riqueza DE_Riqueza Min_Riqueza Max_Riqueza
## 1      9.730769             9.5   4.370648           2          21
##   Media_Shannon Mediana_Shannon DE_Shannon Min_Shannon Max_Shannon
## 1      1.762308            1.85  0.6069164        0.67        2.98
##   Media_Altitud Mediana_Altitud DE_Altitud Min_Altitud Max_Altitud
## 1      1243.892          1254.8   172.7084       950.9      1600.8

La riqueza de especies presentó una media de 9,73 especies y valores entre 2 y 21, mostrando una variabilidad considerable. El índice de Shannon tuvo una media de 1,76, con valores entre 0,67 y 2,98, indicando diferencias en la diversidad entre las parcelas. La altitud presentó una media de 1243,89 m.s.n.m., con valores entre 950,9 y 1600,8 m.s.n.m., mostrando una variación importante en la elevación de los sitios muestreados.

library(ggplot2)

ggplot(BD_biodiversidad, aes(y = Riqueza)) +
  geom_boxplot() +
  labs(
    title = "Distribución de la riqueza de especies",
    y = "Riqueza"
  ) +
  theme_minimal()

La riqueza de especies presenta una mediana cercana a 9,5 especies, con el 50 % central de los datos aproximadamente entre 6 y 13 especies. Los valores oscilan entre 2 y 21 especies, mostrando una variabilidad considerable. No se observan valores atípicos evidentes en la distribución.

ggplot(BD_biodiversidad, aes(y = Shannon)) +
  geom_boxplot() +
  labs(
    title = "Distribución del índice de Shannon",
    y = "Índice de Shannon"
  ) +
  theme_minimal()

El índice de Shannon presentó una mediana cercana a 1,85, con valores entre 0,67 y 2,98, mostrando variación en la diversidad de anfibios entre las parcelas muestreadas. El 50 % central de los datos se encuentra aproximadamente entre 1,25 y 2,10, y no se observan valores atípicos evidentes. Esto indica que las parcelas presentan distintos niveles de diversidad, que posteriormente se compararán entre los tipos de hábitat.

ggplot(BD_biodiversidad, aes(y = Altitud)) +
  geom_boxplot() +
  labs(
    title = "Distribución de la altitud",
    y = "Altitud (m.s.n.m.)"
  ) +
  theme_minimal()

La altitud de las parcelas presenta una mediana cercana a 1255 m.s.n.m., con valores entre 950,9 y 1600,8 m.s.n.m.. El 50 % central se encuentra aproximadamente entre 1080 y 1380 m.s.n.m., mostrando una variación considerable entre los sitios de muestreo. No se observan valores atípicos evidentes.

  1. Realice un análisis exploratorio bivariado que permita comparar la riqueza y la diversidad de Shannon entre los diferentes tipos de hábitat (por ejemplo, mediante boxplots por grupo), y explore la relación entre la altitud y la diversidad.
library(dplyr)

tabla_3b <- BD_biodiversidad %>%
  group_by(Habitat) %>%
  summarise(
    n = n(),
    Media_Riqueza = mean(Riqueza),
    DE_Riqueza = sd(Riqueza),
    Media_Shannon = mean(Shannon),
    DE_Shannon = sd(Shannon),
    Media_Altitud = mean(Altitud),
    .groups = "drop"
  )

tabla_3b
## # A tibble: 4 × 7
##   Habitat      n Media_Riqueza DE_Riqueza Media_Shannon DE_Shannon Media_Altitud
##   <chr>    <int>         <dbl>      <dbl>         <dbl>      <dbl>         <dbl>
## 1 Bosque …    13         14.8        2.74          2.47      0.377         1453.
## 2 Bosque …    13         11.1        3.01          1.97      0.220         1326.
## 3 Potrero     13          5          1.29          1.00      0.240         1045.
## 4 Sistema…    13          8.08       2.50          1.60      0.281         1151.

La riqueza y la diversidad de Shannon varían entre los tipos de hábitat. El bosque primario presenta los mayores valores promedio de riqueza (14,77 especies) y Shannon (2,47), seguido por el bosque secundario (11,08 y 1,97). El sistema silvopastoril presenta valores intermedios (8,08 y 1,60), mientras que el potrero presenta los menores (5,00 y 1,00). Descriptivamente, los hábitats con menor intervención presentan mayores valores de riqueza y diversidad.

ggplot(BD_biodiversidad, aes(x = Habitat, y = Riqueza)) +
  geom_boxplot() +
  labs(
    title = "Riqueza de especies según hábitat",
    x = "Hábitat",
    y = "Riqueza de especies"
  ) +
  theme_minimal()

La riqueza de especies es mayor en el bosque primario, seguida del bosque secundario, el sistema silvopastoril y el potrero. El bosque primario presenta además algunos valores atípicos, mientras que el bosque secundario muestra un valor bajo aislado. En general, se observa una disminución de la riqueza a medida que aumenta el grado de intervención del hábitat.

ggplot(BD_biodiversidad, aes(x = Habitat, y = Shannon)) +
  geom_boxplot() +
  labs(
    title = "Diversidad de Shannon según hábitat",
    x = "Hábitat",
    y = "Índice de Shannon"
  ) +
  theme_minimal()

La diversidad de Shannon es mayor en el bosque primario, seguida del bosque secundario, el sistema silvopastoril y el potrero. El bosque primario presenta una mayor variabilidad en sus valores, mientras que el bosque secundario muestra una distribución más homogénea y un valor atípico bajo. El sistema silvopastoril presenta valores intermedios, mientras que el potrero tiene los valores más bajos. En general, se observa una disminución de la diversidad de Shannon a medida que aumenta la intervención del hábitat.

ggplot(BD_biodiversidad, aes(x = Altitud, y = Shannon)) +
  geom_point() +
  geom_smooth(method = "lm", se = TRUE) +
  labs(
    title = "Relación entre altitud y diversidad de Shannon",
    x = "Altitud (m.s.n.m.)",
    y = "Índice de Shannon"
  ) +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

Se observa una relación positiva entre la altitud y la diversidad de Shannon, ya que los valores de diversidad tienden a aumentar a medida que aumenta la altitud. Las parcelas a menor altitud presentan, en general, valores más bajos de diversidad, mientras que a mayor altitud se observan valores más altos. Además, se identifica un valor atípico alrededor de los 1600 m.s.n.m., que presenta una diversidad menor a la esperada según la tendencia general. En conjunto, el gráfico sugiere que la diversidad de anfibios tiende a incrementarse con la altitud.

  1. Evalúe mediante un ANOVA de una vía si existen diferencias significativas en el índice de diversidad de Shannon entre los tipos de hábitat. Verifique los supuestos del modelo (normalidad de los residuales y homogeneidad de varianzas) y, de encontrar diferencias significativas, realice las comparaciones post- hoc pertinentes (prueba de LSD), interpretando qué hábitats difieren entre sí y cuáles no.
modelo <- aov(Shannon ~ Habitat, data = BD_biodiversidad)

summary(modelo)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Habitat      3 14.862   4.954   60.61 2.38e-16 ***
## Residuals   48  3.923   0.082                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

El ANOVA de una vía mostró diferencias estadísticamente significativas en el índice de diversidad de Shannon entre los diferentes tipos de hábitat (F = 60,61; p < 0,001). Por lo tanto, se rechaza la hipótesis nula de igualdad de medias y se concluye que al menos uno de los hábitats presenta una diversidad de Shannon diferente.

shapiro.test(residuals(modelo))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelo)
## W = 0.97846, p-value = 0.4625

La prueba de Shapiro-Wilk presentó un valor de W = 0,9785 y p = 0,4625. Debido a que p > 0,05, no se rechaza la hipótesis de normalidad. Por lo tanto, se cumple el supuesto de normalidad de los residuales.

library(car)

leveneTest(Shannon ~ Habitat, data = BD_biodiversidad)
## Warning in leveneTest.default(y = y, group = group, ...): group coerced to
## factor.
## Levene's Test for Homogeneity of Variance (center = median)
##       Df F value Pr(>F)
## group  3  1.2768  0.293
##       48

La prueba de Levene mostró que no existen diferencias significativas entre las varianzas de los grupos (F = 1,2768; p = 0,293). Debido a que p > 0,05, se cumple el supuesto de homogeneidad de varianzas.

LSD <- LSD.test(modelo, "Habitat", p.adj = "none")
LSD
## $statistics
##      MSerror Df     Mean       CV  t.value       LSD
##   0.08173622 48 1.762308 16.22279 2.010635 0.2254674
## 
## $parameters
##         test p.ajusted  name.t ntr alpha
##   Fisher-LSD      none Habitat   4  0.05
## 
## $means
##                        Shannon       std  r         se       LCL      UCL  Min
## Bosque primario       2.467692 0.3765668 13 0.07929314 2.3082628 2.627122 1.73
## Bosque secundario     1.974615 0.2204395 13 0.07929314 1.8151858 2.134045 1.44
## Potrero               1.003846 0.2396712 13 0.07929314 0.8444166 1.163276 0.67
## Sistema silvopastoril 1.603077 0.2812586 13 0.07929314 1.4436474 1.762506 1.14
##                        Max  Q25  Q50  Q75
## Bosque primario       2.98 2.13 2.53 2.75
## Bosque secundario     2.27 1.86 2.03 2.10
## Potrero               1.34 0.80 0.98 1.20
## Sistema silvopastoril 2.06 1.41 1.62 1.86
## 
## $comparison
## NULL
## 
## $groups
##                        Shannon groups
## Bosque primario       2.467692      a
## Bosque secundario     1.974615      b
## Sistema silvopastoril 1.603077      c
## Potrero               1.003846      d
## 
## attr(,"class")
## [1] "group"

La prueba LSD mostró diferencias significativas en la diversidad de Shannon entre todos los tipos de hábitat. El bosque primario presentó la mayor diversidad (2,47), seguido del bosque secundario (1,97), el sistema silvopastoril (1,60) y el potrero (1,00). Esto indica que, bajo las condiciones evaluadas, los hábitats con menor intervención antrópica mantienen una mayor diversidad de anfibios, mientras que en los hábitats más intervenidos la diversidad disminuye.