PUNTO 1

Cargar los paquetes necesarios

library(vegan)
## Warning: package 'vegan' was built under R version 4.3.3
## Loading required package: permute
## Warning: package 'permute' was built under R version 4.3.3
## Loading required package: lattice
## This is vegan 2.6-8
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.3

Cargar la base de datos ‘BCI’ que viene con el paquete vegan

data(BCI)

1. Modelos de Distribución de Abundancia de Especies

Modelos de distribución de abundancia

k <- sample(nrow(BCI), 1)
fish <- fisherfit(BCI[k,])
fish
## 
## Fisher log series model
## No. of species: 82 
## Fisher alpha:   29.46136

Graficar el modelo de Fisher

plot(fish, main = "Modelo de Fisher")

El modelo de Fisher se utiliza para ajustar la distribución de la abundancia de especies. Este modelo es útil para representar distribuciones en las que hay muchas especies raras y pocas especies comunes. La gráfica muestra la frecuencia de especies en función del número de individuos.

prestondistr(BCI[k,])
## 
## Preston lognormal model
## Method: maximized likelihood to log2 abundances 
## No. of species: 82 
## 
##       mode      width         S0 
##  0.7941683  1.9060877 20.7597700 
## 
## Frequencies by Octave
##                 0        1        2        3         4       5         6
## Observed 15.50000 24.00000 19.00000  9.00000 10.500000 2.00000 1.0000000
## Fitted   19.03385 20.63908 16.99488 10.62698  5.046214 1.81964 0.4982754
##                  7
## Observed 1.0000000
## Fitted   0.1036137

Ajustar el modelo de distribución de abundancia

rad <- radfit(BCI)

Ajustar el modelo log-normal

mod_lognormal <- prestondistr(BCI)
plot(mod_lognormal, main = "Modelo Log-normal para los Datos Completos")

El modelo log-normal representa una distribución en la que las especies tienen una abundancia que sigue una curva en forma de campana, indicando que la mayoría de las especies tienen una abundancia intermedia.

Ajustar el modelo de distribución de abundancia a la primera fila

mod <- radfit(BCI[1,])
plot(mod)

plot(mod, log = "xy")

radlattice(mod)

El modelo de distribución de abundancia ajustado a una fila específica permite observar cómo se distribuyen las especies en una parcela particular. La escala log-log permite analizar mejor las especies de baja y alta abundancia.

Ajustar el modelo de distribución de abundancia a todos los datos

mod <- radfit(BCI)
plot(mod, pch=".")

Ajustar un modelo de distribución a todos los datos proporciona una visión general de cómo se distribuyen las especies en todo el conjunto de parcelas.

2. Índices de Diversidad

Calcular índices de diversidad

H <- diversity(BCI)
J <- H/log(specnumber(BCI))

Modelos de distribución de abundancia Seleccionar 6 filas aleatorias de los datos

k <- sample(nrow(BCI), 6)

Calcular el perfil de Rényi

R <- renyi(BCI[k,])

Graficar el perfil de Rényi

alpha <- fisher.alpha(BCI)
plot(R)

El perfil de Rényi permite comparar la diversidad entre varias parcelas de manera gráfica, mostrando cómo cambia la diversidad al variar el parámetro de orden.

3. Curvas de Acumulación de Especies

Curvas de acumulación de especies

sac <- specaccum(BCI)
## Warning in cor(x > 0): the standard deviation is zero

Graficar la curva de acumulación de especies con intervalo de confianza

plot(sac, ci.type="polygon", ci.col="yellow")

La curva de acumulación de especies muestra cómo el número de especies observadas aumenta a medida que se muestrean más parcelas.Una curva que sigue subiendo sugiere que aún hay más especies por descubrir.

PUNTO 2

Cargar las librerías necesarias

library(dplyr)
## Warning: package 'dplyr' was built under R version 4.3.3
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(tidyr)
## Warning: package 'tidyr' was built under R version 4.3.3
library(readxl)

Leer la base de datos de Excel

Especies<-read_excel("C:/Users/LENOVO/Downloads/Especies_parcela.xlsx")

Convertir todos los datos al formato largo

Especies_long <- Especies %>%
  pivot_longer(
    cols = everything(Especies),          # Seleccionar todas las columnas
    names_to = "Especie",         # Columna para los nombres de las especies (antes los nombres de las columnas)
    values_to = "Abundancia"      # Columna para los valores de abundancia
  ) %>%
  filter(Abundancia > 0)           # Filtrar solo las filas con abundancia mayor a 0

Ver el resultado en formato largo

Especies_long
str(Especies_long)
## tibble [44 × 2] (S3: tbl_df/tbl/data.frame)
##  $ Especie   : chr [1:44] "Croton  magdalenensis" "Cupressus  Lusitanica" "Myrcia cf. popayanensis" "Piper cf. daniel-gonzalezii" ...
##  $ Abundancia: num [1:44] 4 3 29 6 2 12 2 7 25 2 ...

Ya tenemos nuestra base de datos ordenada.

Agrupar por especie y sumar la abundancia total para cada especie

Especies_long.punto <- Especies_long %>%
  group_by(Especie) %>%
  summarise(Total = sum(Abundancia))

Convertir el data frame en formato ancho

Especies_long.punto <- Especies_long.punto %>% spread(key = Especie, value = Total)

Reemplazar los valores NA con 0

Especies_long.punto[is.na(Especies_long.punto)] <- 0

Convertir a data frame final (ya no necesitas eliminar la columna ‘Abundancia’)

Especies_long.punto.final <- as.data.frame(Especies_long.punto)

Ver el resultado final

Especies_long.punto.final
data <- Especies
data
k <- sample(nrow(data), 3)
R <- renyi(data[k,])
plot(R)

rad <- radfit(data)
## Warning: Setting row names on a tibble is deprecated.
summary(data)
##  Acacia melanoxylon  Asteraceae 1   Asteraceae 2 Cavendishia  sp
##  Min.   :0.0        Min.   : 0.0   Min.   :0.0   Min.   :0      
##  1st Qu.:0.0        1st Qu.: 0.0   1st Qu.:0.0   1st Qu.:0      
##  Median :0.0        Median : 0.0   Median :0.0   Median :0      
##  Mean   :0.2        Mean   : 3.8   Mean   :0.2   Mean   :1      
##  3rd Qu.:0.0        3rd Qu.: 8.0   3rd Qu.:0.0   3rd Qu.:0      
##  Max.   :1.0        Max.   :11.0   Max.   :1.0   Max.   :5      
##  Cecropia cf. angustifolia  Clethra  sp    Clusia  sp   Cordia  sp1 
##  Min.   :0                 Min.   :0.0   Min.   :0.0   Min.   :0.0  
##  1st Qu.:0                 1st Qu.:0.0   1st Qu.:0.0   1st Qu.:0.0  
##  Median :1                 Median :0.0   Median :0.0   Median :0.0  
##  Mean   :1                 Mean   :0.2   Mean   :0.4   Mean   :1.4  
##  3rd Qu.:2                 3rd Qu.:0.0   3rd Qu.:1.0   3rd Qu.:0.0  
##  Max.   :2                 Max.   :1.0   Max.   :1.0   Max.   :7.0  
##  Croton  magdalenensis Cupressus  Lusitanica Eucalyptus grandis
##  Min.   : 0.0          Min.   :0.0           Min.   :0.0       
##  1st Qu.: 1.0          1st Qu.:0.0           1st Qu.:0.0       
##  Median : 3.0          Median :0.0           Median :0.0       
##  Mean   : 6.6          Mean   :0.8           Mean   :0.4       
##  3rd Qu.: 4.0          3rd Qu.:1.0           3rd Qu.:0.0       
##  Max.   :25.0          Max.   :3.0           Max.   :2.0       
##  Ficus cf. americana Freziera  chrysophylla Hedyosmum  sp  Miconia sp1 
##  Min.   :0.0         Min.   :0.0            Min.   :0.0   Min.   :0.0  
##  1st Qu.:0.0         1st Qu.:0.0            1st Qu.:0.0   1st Qu.:0.0  
##  Median :0.0         Median :0.0            Median :0.0   Median :0.0  
##  Mean   :0.4         Mean   :0.8            Mean   :0.8   Mean   :1.2  
##  3rd Qu.:0.0         3rd Qu.:2.0            3rd Qu.:1.0   3rd Qu.:0.0  
##  Max.   :2.0         Max.   :2.0            Max.   :3.0   Max.   :6.0  
##   Miconia sp2  Myrcia cf. popayanensis Myrsine  coriacea Oreopanax  sp
##  Min.   :0.0   Min.   : 0.0            Min.   :0         Min.   :0.0  
##  1st Qu.:0.0   1st Qu.: 0.0            1st Qu.:0         1st Qu.:0.0  
##  Median :0.0   Median : 1.0            Median :1         Median :0.0  
##  Mean   :0.2   Mean   : 6.4            Mean   :1         Mean   :0.2  
##  3rd Qu.:0.0   3rd Qu.: 2.0            3rd Qu.:2         3rd Qu.:0.0  
##  Max.   :1.0   Max.   :29.0            Max.   :2         Max.   :1.0  
##  Persea  americana Piper cf. daniel-gonzalezii  Solanum  sp1
##  Min.   :0.0       Min.   :0.0                 Min.   :0.0  
##  1st Qu.:0.0       1st Qu.:0.0                 1st Qu.:0.0  
##  Median :0.0       Median :0.0                 Median :0.0  
##  Mean   :0.4       Mean   :1.2                 Mean   :0.4  
##  3rd Qu.:0.0       3rd Qu.:0.0                 3rd Qu.:0.0  
##  Max.   :2.0       Max.   :6.0                 Max.   :2.0  
##  Solanum cf. ovalifolium Toxicodendron  striatum  Viburnum  sp
##  Min.   : 0.0            Min.   :0.0             Min.   :0.0  
##  1st Qu.: 0.0            1st Qu.:0.0             1st Qu.:0.0  
##  Median : 0.0            Median :0.0             Median :0.0  
##  Mean   : 2.2            Mean   :0.2             Mean   :0.2  
##  3rd Qu.: 1.0            3rd Qu.:0.0             3rd Qu.:0.0  
##  Max.   :10.0            Max.   :1.0             Max.   :1.0  
##  Viburnum  undulatum Vismia  baccifera
##  Min.   :0.0         Min.   : 0.0     
##  1st Qu.:0.0         1st Qu.: 0.0     
##  Median :0.0         Median : 7.0     
##  Mean   :0.4         Mean   : 6.6     
##  3rd Qu.:0.0         3rd Qu.:12.0     
##  Max.   :2.0         Max.   :14.0
plot(rad)

Graficamos la curva de acumulación

sac <- specaccum(Especies)
sac
## Species Accumulation Curve
## Accumulation method: exact
## Call: specaccum(comm = Especies) 
## 
##                                                   
## Sites    1.000000  2.000000  3.000000  4.000000  5
## Richness 8.800000 15.200000 20.000000 23.800000 27
## sd       2.785678  3.002515  2.694439  1.469694  0
plot(sac, ci.type="polygon", ci.col="yellow")

Indices de diversidad

shan <- diversity(Especies_long.punto.final, "shannon") #mide la diversidad de especies, considerando tanto riqueza como equidad.
simp <- diversity(Especies_long.punto.final, "simpson") #evalúa la probabilidad de que dos individuos seleccionados al azar pertenezcan a la misma especie.
alpha <- fisher.alpha(Especies_long.punto.final)   #proporciona una medida de la diversidad que es útil en estudios comparativos.

shan
## [1] 2.62947
simp
## [1] 0.8937153
alpha
## [1] 8.541417

Teniendo en cuenta lo que aportan los indices de diversidad calculados podemos decir hay una diversidad moderada-alta en la comunidad, indicando que no hay dominancia extrema de una sola especie y que la abundancia se distribuye en varias especies esto nos lo confirma el valor alto del indice de fisher con el que podemos afirmar que es relativamente rica en especies y gracias a que hay una alta diversidad es poco probable que dos individuos tomados al azar sean de la misma especie.