ECOLOGIA NUMÉRICA

Índices de diversidade biológica

Ewelyn Kailane Lopes da Silva

2023-03-07

ATIVIDADE CAPÍTULO 12

Nesta atividade 1, realizou-se um exercicío dinâmico com comunidades culinárias, onde foram utilizadaos grãos e massas para simulação da montagem de uma comundaidade biológica em uma ilha oceânica recém formada, onde nessa ultima atividade tem o objetivo de criar seu próprio roteiro de análise, comparar os resultados e aprimorar os conhecimentos.Diante disso, dois grupos foram formados e suas tecnicas foram:

GRUPO 1: A técnica usada foi de aleatorização das amostras, sorteando quadrados aleatórios na ilha oceânica que correspondiam a 10% da área da ilha.

GRUPO 2: A técnica usada foi dois transectos localizados de maneira planejada para maximizar a captura da diverisdade da ilha.

#DADOS)

library(devtools)
## Carregando pacotes exigidos: usethis
library(ecodados)
library(vegan)
## Carregando pacotes exigidos: permute
## 
## Attaching package: 'permute'
## The following object is masked from 'package:devtools':
## 
##     check
## Carregando pacotes exigidos: lattice
## This is vegan 2.6-4
library(ggplot2)
library(BiodiversityR)
## Carregando pacotes exigidos: tcltk
## BiodiversityR 2.15-1: Use command BiodiversityRGUI() to launch the Graphical User Interface; 
## to see changes use BiodiversityRGUI(changeLog=TRUE, backward.compatibility.messages=TRUE)
library(hillR)
library(betapart)
base <- read.csv("https://raw.githubusercontent.com/fplmelo/ecoaplic/main/content/collection/eco_num/com_cul.csv", row.names = 1)

Na tabela acima, pode-se distinguir que as comunidades culinárias foram analisadas a partir de 10 espécies que estariam presentes na ilha oceânica, onde nesta tabela é evidente quantas espécies e a respectiva abundância de cada espécie na área escolhida analisada.

12.1 Análise dos dados e riqueza

base_q<-base[,1:10]
base_q
##              q1 q2 q3 q4 q5 q6 q7 q8 q9 q10
## arroz_c       0  1  7  6  1  4  4  1  1   5
## arroz_e       1  0  0  1  0  0  8  4  0   3
## milho         0  0  0  0  0  0  0  0  0   0
## ervilha       0  0  1  0  0  0  1  0  0   0
## feijao_preto  0  0  0  0  0  0  0  0  0   0
## carioca_c     0  0  1  1  0  0  0  0  0   0
## carioca_e     0  0  0  2  2  0  0  0  0   8
## mac_paraf     0  0  0  0  0  0  0  0  0   0
## mac_tubo      0  0  0  0  0  0  0  0  0   0
## mac_espag     0  0  0  3  1  0  0  0  6   4

A base “q” da tabela, foi relizada pelo grupo 1, onde a estratégia do mesmo apresentou em um total de 6 espécies apresentadas nos plots cobrindo 10% da ilha de forma aleatória.

rowSums(base_q)
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##           30           17            0            2            0            2 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##           12            0            0           14

Foi somado os valores de todas as espécies em cada linha, ou seja, soma dos elementos de cada linha da matriz da base q. A partir disso, pode-se concluir a abundância de cada espécie em cada plot aleatório analisado.

specnumber(base_q)
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##            9            5            0            2            0            2 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##            3            0            0            4

Após a análise, pode-se constar o número total das espécies em cada plot analisado no método do grupo q.

riqueza_sp <- specnumber(base_q)
riqueza_sp
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##            9            5            0            2            0            2 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##            3            0            0            4
base_t<-base[,11:20]
base_t
##              t1 t2 t3 t4 t5 t6 t7 t8 t9 t10
## arroz_c       3  8  5  6  3  0  0  0  0   3
## arroz_e       0  1  8  1  1  0  0  0  1   0
## milho         0  0  0  0  0  0  0  0  0   0
## ervilha       0  0  1  0  0  0  0  0  0   0
## feijao_preto  0  0  6  0  0  0  0  0  0   0
## carioca_c     0  0  0  0  0  2  0  0  0   1
## carioca_e     0  0  0  0  0  0  0  0  0   0
## mac_paraf     0  0  0  0  0  0  1  0  0   0
## mac_tubo      0  0  0  0  0  0  0  0  0   0
## mac_espag    16  9  0  0  0  0  2  2  1   0

A base “T” da tabela, foi relizada pelo grupo 2, onde a estratégia usada foi dois transectos cobrindo 10% da ilha. É evidente que foram registradas 7 espécies com diferentes abundâncias entre si.

rowSums(base_t)
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##           28           12            0            1            6            3 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##            0            1            0           30

Foi somado os valores de todas as espécies em cada linha, ou seja, soma dos elementos de cada linha da matriz da base t. A partir disso, pode-se concluir a abundância de cada espécie nos dois transectos localizados de maneira planejada para maximizar a captura da diverisdade da ilha.

specnumber(base_t)
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##            6            5            0            1            1            2 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##            0            1            0            5

Após a análise, pode-se constar o número total das espécies em cada plot analisado no método do grupo t.

riqueza_sp <- specnumber(base_t)
riqueza_sp
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##            6            5            0            1            1            2 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##            0            1            0            5

12.2 Curva de Rank-abundância

abundancia <- apply(base_t, 1, sum)
abundancia
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##           28           12            0            1            6            3 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##            0            1            0           30
abundancia <- apply(base_q, 1, sum)
abundancia
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##           30           17            0            2            0            2 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##           12            0            0           14
mod22 <- radfit(base_q[1,])


mod222 <- radfit(base_t[1,])

plot(mod22)

plot(mod222)

12. Curvas de distribuição de abundâncias

curvas_dominancia_com2 <- radfit(base_q[2,])
curvas_dominancia_com2
## 
## RAD models, family poisson 
## No. of species 5, total abundance 17
## 
##            par1     par2        par3        Deviance AIC      BIC     
## Null                                         0.41993 14.61567 14.61567
## Preemption  0.43903                          0.37844 16.57418 16.18362
## Lognormal   0.92942  0.97398                 0.36032 18.55606 17.77494
## Zipf        0.49291 -1.2078                  0.57233 18.76807 17.98695
## Mandelbrot    Inf   -3.5881e+06  6.3384e+06  0.32061 20.51635 19.34466
curvas_dominancia_com2 <- radfit(base_t[2,])
curvas_dominancia_com2
## 
## RAD models, family poisson 
## No. of species 5, total abundance 12
## 
##            par1     par2    par3        Deviance AIC     BIC    
## Null                                     3.8550  15.7931 15.7931
## Preemption  0.50429                      3.3807  17.3188 16.9283
## Lognormal   0.41453  1.2373              2.8856  18.8238 18.0426
## Zipf        0.6018  -1.6378              1.5030  17.4412 16.6601
## Mandelbrot  0.6018  -1.6378  8.7117e-07  1.5030  19.4412 18.2695

12.3 Indice de Margalef

Margalef <- round((riqueza_sp - 1)/log(abundancia), 2)
Margalef
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##         1.47         1.41         0.00         0.00         0.00         1.44 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##        -0.40         0.00         0.00         1.52

12.4 Indice de Menhinik

Menhinick <- round(riqueza_sp/sqrt(abundancia), 2)
Menhinick
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##         1.10         1.21          NaN         0.71          Inf         1.41 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##         0.00          Inf          NaN         1.34

12.5 Indice de shannon

shannon_res <- diversity(base_q, index = "shannon", MARGIN = 1)
shannon_res
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##    1.9508816    1.3345930    0.0000000    0.6931472    0.0000000    0.6931472 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##    0.8675632    0.0000000    0.0000000    1.2396594

shannon_res <- diversity(base_t, index = "shannon", MARGIN = 1)
shannon_res
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##    1.7136049    1.0986123    0.0000000    0.0000000    0.0000000    0.6365142 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##    0.0000000    0.0000000    0.0000000    1.1708964

12.6 Indice de simpson

simpson_res <- diversity(base_q, index = "simpson", MARGIN = 1) 
simpson_res
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##    0.8377778    0.6851211    1.0000000    0.5000000    1.0000000    0.5000000 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##    0.5000000    1.0000000    1.0000000    0.6836735
simpson_res <- diversity(base_t, index = "simpson", MARGIN = 1) 
simpson_res
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##    0.8061224    0.5277778    1.0000000    0.0000000    0.0000000    0.4444444 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##    1.0000000    0.0000000    1.0000000    0.6155556

12.7 Índice de Equabilidade (ou Equitabilidade) de Pielou

Pielou <- shannon_res/log(specnumber(base_q))
Pielou
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##    0.7798952    0.6826062    0.0000000    0.0000000    0.0000000    0.9182958 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##    0.0000000    0.0000000    0.0000000    0.8446232
Pielou <- shannon_res/log(specnumber(base_t))
Pielou
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##    0.9563811    0.6826062    0.0000000          NaN          NaN    0.9182958 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##    0.0000000          NaN    0.0000000    0.7275188

12.8 Números de Hill

12.8.1 Método t

hill_res_q_0_1 <- hill_taxa(t(base_t), q  = 0)
hill_res_q_0_1
##  t1  t2  t3  t4  t5  t6  t7  t8  t9 t10 
##   2   3   4   2   2   1   2   1   2   2
hill_res_q_1_1 <- hill_taxa(t(base_t), q  = 1)
hill_res_q_1_1
##       t1       t2       t3       t4       t5       t6       t7       t8 
## 1.546760 2.381102 3.400996 1.506993 1.754765 1.000000 1.889882 1.000000 
##       t9      t10 
## 2.000000 1.754765
hill_res_q_2_1 <- hill_taxa(t(base_t), q  = 2)
hill_res_q_2_1
##       t1       t2       t3       t4       t5       t6       t7       t8 
## 1.362264 2.219178 3.174603 1.324324 1.600000 1.000000 1.800000 1.000000 
##       t9      t10 
## 2.000000 1.600000
res_hill1 <- data.frame(hill_res_q_0_1, hill_res_q_1_1, hill_res_q_2_1)
colnames(res_hill1) <- c("q=0", "q=1", "q=2")
res_hill1
##     q=0      q=1      q=2
## t1    2 1.546760 1.362264
## t2    3 2.381102 2.219178
## t3    4 3.400996 3.174603
## t4    2 1.506993 1.324324
## t5    2 1.754765 1.600000
## t6    1 1.000000 1.000000
## t7    2 1.889882 1.800000
## t8    1 1.000000 1.000000
## t9    2 2.000000 2.000000
## t10   2 1.754765 1.600000

12.8.2 Método q

hill_mq_q_0 <- hill_taxa(base_q, q  = 0)
hill_mq_q_0
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##            9            5            0            2            0            2 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##            3            0            0            4
hill_mq_q_1 <- hill_taxa(base_q, q  = 1)
hill_mq_q_1
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##     7.034887     3.798449     1.000000     2.000000     1.000000     2.000000 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##     2.381102     1.000000     1.000000     3.454437
hill_mq_q_2 <- hill_taxa(base_q, q  = 2)
hill_mq_q_2
##      arroz_c      arroz_e        milho      ervilha feijao_preto    carioca_c 
##     6.164384     3.175824          Inf     2.000000          Inf     2.000000 
##    carioca_e    mac_paraf     mac_tubo    mac_espag 
##     2.000000          Inf          Inf     3.161290
resq_hill <- data.frame(hill_mq_q_0, hill_mq_q_1, hill_mq_q_2)
colnames(resq_hill) <- c("q=0", "q=1", "q=2")
resq_hill
##              q=0      q=1      q=2
## arroz_c        9 7.034887 6.164384
## arroz_e        5 3.798449 3.175824
## milho          0 1.000000      Inf
## ervilha        2 2.000000 2.000000
## feijao_preto   0 1.000000      Inf
## carioca_c      2 2.000000 2.000000
## carioca_e      3 2.381102 2.000000
## mac_paraf      0 1.000000      Inf
## mac_tubo       0 1.000000      Inf
## mac_espag      4 3.454437 3.161290

A partir da análise dos resultados obtidos, é possível notar que em ambos os métodos o resultado caiu conforme a mudança do número de Hill do 0 em direção ao 2, podendo perceber também que nos quadrantes 1, 2 e 6 são igualmente diversas, onde as abundâncias de cada uma das espécies são iguais. Já nas outras, pode-se observar que com a mudança do valor de q de 1 e 2 o indice de diversidade apresenta uma redução, mostrando claramente uma baixa dominancia de abundâncias de espécies, ou seja, sendo as espécies mais comuns e dominantes as que tiveram maior queda, isso ocorre pois existe uma sensibilidade em cada número de Hill a graus de diferentes abundâncias.

                             (q=0 raras; q=1 comuns; q=2 abundantes) 

12.9 calculando diversidades

12.9.1 Cálculo da diverisidade beta para a riqueza do grupo q e grupo t -

composiçãog1 <- decostand(base_q, method = "pa")
composiçãog1
##              q1 q2 q3 q4 q5 q6 q7 q8 q9 q10
## arroz_c       0  1  1  1  1  1  1  1  1   1
## arroz_e       1  0  0  1  0  0  1  1  0   1
## milho         0  0  0  0  0  0  0  0  0   0
## ervilha       0  0  1  0  0  0  1  0  0   0
## feijao_preto  0  0  0  0  0  0  0  0  0   0
## carioca_c     0  0  1  1  0  0  0  0  0   0
## carioca_e     0  0  0  1  1  0  0  0  0   1
## mac_paraf     0  0  0  0  0  0  0  0  0   0
## mac_tubo      0  0  0  0  0  0  0  0  0   0
## mac_espag     0  0  0  1  1  0  0  0  1   1
resultadog1 <- beta.pair(composiçãog1, index.family = "sorensen")

resultadog1$beta.sor
##                arroz_c   arroz_e     milho   ervilha feijao_preto carioca_c
## arroz_e      0.4285714                                                     
## milho        1.0000000 1.0000000                                           
## ervilha      0.6363636 0.7142857 1.0000000                                 
## feijao_preto 1.0000000 1.0000000       NaN 1.0000000                       
## carioca_c    0.6363636 0.7142857 1.0000000 0.5000000    1.0000000          
## carioca_e    0.5000000 0.5000000 1.0000000 1.0000000    1.0000000 0.6000000
## mac_paraf    1.0000000 1.0000000       NaN 1.0000000          NaN 1.0000000
## mac_tubo     1.0000000 1.0000000       NaN 1.0000000          NaN 1.0000000
## mac_espag    0.3846154 0.5555556 1.0000000 1.0000000    1.0000000 0.6666667
##              carioca_e mac_paraf  mac_tubo
## arroz_e                                   
## milho                                     
## ervilha                                   
## feijao_preto                              
## carioca_c                                 
## carioca_e                                 
## mac_paraf    1.0000000                    
## mac_tubo     1.0000000       NaN          
## mac_espag    0.1428571 1.0000000 1.0000000
data.frame_PA1 <- data.frame(round(as.numeric(resultadog1$beta.sor), 2),
                            round(as.numeric(resultadog1$beta.sim), 2),
                            round(as.numeric(resultadog1$beta.sne), 2))
colnames(data.frame_PA1) <- c("Sorensen", "Simpson", "Aninhamento")
data.frame_PA1
##    Sorensen Simpson Aninhamento
## 1      0.43    0.20        0.23
## 2      1.00     NaN         NaN
## 3      0.64    0.00        0.64
## 4      1.00     NaN         NaN
## 5      0.64    0.00        0.64
## 6      0.50    0.00        0.50
## 7      1.00     NaN         NaN
## 8      1.00     NaN         NaN
## 9      0.38    0.00        0.38
## 10     1.00     NaN         NaN
## 11     0.71    0.50        0.21
## 12     1.00     NaN         NaN
## 13     0.71    0.50        0.21
## 14     0.50    0.33        0.17
## 15     1.00     NaN         NaN
## 16     1.00     NaN         NaN
## 17     0.56    0.50        0.06
## 18     1.00     NaN         NaN
## 19      NaN     NaN         NaN
## 20     1.00     NaN         NaN
## 21     1.00     NaN         NaN
## 22      NaN     NaN         NaN
## 23      NaN     NaN         NaN
## 24     1.00     NaN         NaN
## 25     1.00     NaN         NaN
## 26     0.50    0.50        0.00
## 27     1.00    1.00        0.00
## 28     1.00     NaN         NaN
## 29     1.00     NaN         NaN
## 30     1.00    1.00        0.00
## 31     1.00     NaN         NaN
## 32     1.00     NaN         NaN
## 33      NaN     NaN         NaN
## 34      NaN     NaN         NaN
## 35     1.00     NaN         NaN
## 36     0.60    0.50        0.10
## 37     1.00     NaN         NaN
## 38     1.00     NaN         NaN
## 39     0.67    0.50        0.17
## 40     1.00     NaN         NaN
## 41     1.00     NaN         NaN
## 42     0.14    0.00        0.14
## 43      NaN     NaN         NaN
## 44     1.00     NaN         NaN
## 45     1.00     NaN         NaN
composiçãog2 <- decostand(base_t, method = "pa")
composiçãog2
##              t1 t2 t3 t4 t5 t6 t7 t8 t9 t10
## arroz_c       1  1  1  1  1  0  0  0  0   1
## arroz_e       0  1  1  1  1  0  0  0  1   0
## milho         0  0  0  0  0  0  0  0  0   0
## ervilha       0  0  1  0  0  0  0  0  0   0
## feijao_preto  0  0  1  0  0  0  0  0  0   0
## carioca_c     0  0  0  0  0  1  0  0  0   1
## carioca_e     0  0  0  0  0  0  0  0  0   0
## mac_paraf     0  0  0  0  0  0  1  0  0   0
## mac_tubo      0  0  0  0  0  0  0  0  0   0
## mac_espag     1  1  0  0  0  0  1  1  1   0
resultadog2 <- beta.pair(composiçãog2, index.family = "sorensen")

resultadog2$beta.sor
##                arroz_c   arroz_e     milho   ervilha feijao_preto carioca_c
## arroz_e      0.2727273                                                     
## milho        1.0000000 1.0000000                                           
## ervilha      0.7142857 0.6666667 1.0000000                                 
## feijao_preto 0.7142857 0.6666667 1.0000000 0.0000000                       
## carioca_c    0.7500000 1.0000000 1.0000000 1.0000000    1.0000000          
## carioca_e    1.0000000 1.0000000       NaN 1.0000000    1.0000000 1.0000000
## mac_paraf    1.0000000 1.0000000 1.0000000 1.0000000    1.0000000 1.0000000
## mac_tubo     1.0000000 1.0000000       NaN 1.0000000    1.0000000 1.0000000
## mac_espag    0.6363636 0.6000000 1.0000000 1.0000000    1.0000000 1.0000000
##              carioca_e mac_paraf  mac_tubo
## arroz_e                                   
## milho                                     
## ervilha                                   
## feijao_preto                              
## carioca_c                                 
## carioca_e                                 
## mac_paraf    1.0000000                    
## mac_tubo           NaN 1.0000000          
## mac_espag    1.0000000 0.6666667 1.0000000
data.frame_PA2 <- data.frame(round(as.numeric(resultadog2$beta.sor), 2),
                            round(as.numeric(resultadog2$beta.sim), 2),
                            round(as.numeric(resultadog2$beta.sne), 2))
colnames(data.frame_PA2) <- c("Sorensen", "Simpson", "Aninhamento")
data.frame_PA2
##    Sorensen Simpson Aninhamento
## 1      0.27     0.2        0.07
## 2      1.00     NaN         NaN
## 3      0.71     0.0        0.71
## 4      0.71     0.0        0.71
## 5      0.75     0.5        0.25
## 6      1.00     NaN         NaN
## 7      1.00     1.0        0.00
## 8      1.00     NaN         NaN
## 9      0.64     0.6        0.04
## 10     1.00     NaN         NaN
## 11     0.67     0.0        0.67
## 12     0.67     0.0        0.67
## 13     1.00     1.0        0.00
## 14     1.00     NaN         NaN
## 15     1.00     1.0        0.00
## 16     1.00     NaN         NaN
## 17     0.60     0.6        0.00
## 18     1.00     NaN         NaN
## 19     1.00     NaN         NaN
## 20     1.00     NaN         NaN
## 21      NaN     NaN         NaN
## 22     1.00     NaN         NaN
## 23      NaN     NaN         NaN
## 24     1.00     NaN         NaN
## 25     0.00     0.0        0.00
## 26     1.00     1.0        0.00
## 27     1.00     NaN         NaN
## 28     1.00     1.0        0.00
## 29     1.00     NaN         NaN
## 30     1.00     1.0        0.00
## 31     1.00     1.0        0.00
## 32     1.00     NaN         NaN
## 33     1.00     1.0        0.00
## 34     1.00     NaN         NaN
## 35     1.00     1.0        0.00
## 36     1.00     NaN         NaN
## 37     1.00     1.0        0.00
## 38     1.00     NaN         NaN
## 39     1.00     1.0        0.00
## 40     1.00     NaN         NaN
## 41      NaN     NaN         NaN
## 42     1.00     NaN         NaN
## 43     1.00     NaN         NaN
## 44     0.67     0.0        0.67
## 45     1.00     NaN         NaN

12.9.2 Calculando diverisidade beta para a abundância do grupo q e grupo t -

resultado_AB1 <- beta.pair.abund(base_q, index.family = "bray")
resultado_AB2 <- beta.pair.abund(base_t, index.family = "bray")
data.frame_AB1 <- data.frame(round(as.numeric(resultado_AB1$beta.bray), 2),
                            round(as.numeric(resultado_AB1$beta.bray.bal), 2),
                            round(as.numeric(resultado_AB1$beta.bray.gra), 2))
colnames(data.frame_AB1) <- c("Bray", "Balanceada", "Gradiente")
data.frame_AB1
##    Bray Balanceada Gradiente
## 1  0.62       0.47      0.15
## 2  1.00        NaN       NaN
## 3  0.88       0.00      0.88
## 4  1.00        NaN       NaN
## 5  0.88       0.00      0.88
## 6  0.62       0.33      0.29
## 7  1.00        NaN       NaN
## 8  1.00        NaN       NaN
## 9  0.59       0.36      0.23
## 10 1.00        NaN       NaN
## 11 0.89       0.50      0.39
## 12 1.00        NaN       NaN
## 13 0.89       0.50      0.39
## 14 0.72       0.67      0.06
## 15 1.00        NaN       NaN
## 16 1.00        NaN       NaN
## 17 0.74       0.71      0.03
## 18 1.00        NaN       NaN
## 19  NaN        NaN       NaN
## 20 1.00        NaN       NaN
## 21 1.00        NaN       NaN
## 22  NaN        NaN       NaN
## 23  NaN        NaN       NaN
## 24 1.00        NaN       NaN
## 25 1.00        NaN       NaN
## 26 0.50       0.50      0.00
## 27 1.00       1.00      0.00
## 28 1.00        NaN       NaN
## 29 1.00        NaN       NaN
## 30 1.00       1.00      0.00
## 31 1.00        NaN       NaN
## 32 1.00        NaN       NaN
## 33  NaN        NaN       NaN
## 34  NaN        NaN       NaN
## 35 1.00        NaN       NaN
## 36 0.86       0.50      0.36
## 37 1.00        NaN       NaN
## 38 1.00        NaN       NaN
## 39 0.88       0.50      0.38
## 40 1.00        NaN       NaN
## 41 1.00        NaN       NaN
## 42 0.46       0.42      0.04
## 43  NaN        NaN       NaN
## 44 1.00        NaN       NaN
## 45 1.00        NaN       NaN
data.frame_AB2 <- data.frame(round(as.numeric(resultado_AB2$beta.bray), 2),
                            round(as.numeric(resultado_AB2$beta.bray.bal), 2),
                            round(as.numeric(resultado_AB2$beta.bray.gra), 2))
colnames(data.frame_AB2) <- c("Bray", "Balanceada", "Gradiente")
data.frame_AB2
##    Bray Balanceada Gradiente
## 1  0.60       0.33      0.27
## 2  1.00        NaN       NaN
## 3  0.93       0.00      0.93
## 4  0.71       0.17      0.54
## 5  0.94       0.67      0.27
## 6  1.00        NaN       NaN
## 7  1.00       1.00      0.00
## 8  1.00        NaN       NaN
## 9  0.62       0.61      0.01
## 10 1.00        NaN       NaN
## 11 0.85       0.00      0.85
## 12 0.33       0.00      0.33
## 13 1.00       1.00      0.00
## 14 1.00        NaN       NaN
## 15 1.00       1.00      0.00
## 16 1.00        NaN       NaN
## 17 0.90       0.83      0.07
## 18 1.00        NaN       NaN
## 19 1.00        NaN       NaN
## 20 1.00        NaN       NaN
## 21  NaN        NaN       NaN
## 22 1.00        NaN       NaN
## 23  NaN        NaN       NaN
## 24 1.00        NaN       NaN
## 25 0.71       0.00      0.71
## 26 1.00       1.00      0.00
## 27 1.00        NaN       NaN
## 28 1.00       1.00      0.00
## 29 1.00        NaN       NaN
## 30 1.00       1.00      0.00
## 31 1.00       1.00      0.00
## 32 1.00        NaN       NaN
## 33 1.00       1.00      0.00
## 34 1.00        NaN       NaN
## 35 1.00       1.00      0.00
## 36 1.00        NaN       NaN
## 37 1.00       1.00      0.00
## 38 1.00        NaN       NaN
## 39 1.00       1.00      0.00
## 40 1.00        NaN       NaN
## 41  NaN        NaN       NaN
## 42 1.00        NaN       NaN
## 43 1.00        NaN       NaN
## 44 0.94       0.00      0.94
## 45 1.00        NaN       NaN