Os objetivos deste exercício são:
Entener diversiade alfa; beta e gama
Enteder e trabalar com índices de diersidade e similaridade diferentes
Continue o script que vocÊ começou no exercíco 1
Este script será de muita utilidade para as suas prórpias análises no final deste módulo e por toda a sua vida como biólogo
HORA DE APRENDER
Robert Harding Whittaker foi um ecólogo estadunidense com muitas contruições para a ciência ecológica. Aqui vamos entender sua calssificação da diversidade biológica em três tipos, alfa, beta e gama.
Diversidade alfa = é a diversidade média de espécies numa escala local ou num habitat contínuo, sem fronteiras. Em outras palavras, pode ser considerada a diversidade de espécies coletadas numa única localidade, amostra ou mancha e hábitat.
Diversidade beta = A diferença na composição entre pares de comunidades. Segundo Whittaker, é a razão entre Gama e Alfa. É um conceito amplo e pode ser acessado numericamente de diferentes formas.
Diversidade gama = Consite no número total de espécies numa paisagem, região ou extensão geográfica onde qualquer espécie presentes no conjunto regional tenha chance de ser encontrada.
A Mata Atlântica do Nordeste do Brasil é um dos centros de endemismo deste bioma. Infelizmente é a porção mais ameaçada deste bioma devido ao longo histórico de uso de solo dessa região basicamente centrado na monocultura da cana-de-açúcar. Esta situação gerou paisgens tipicamente fragmetadas, com pequenos fragmentos imersos numa matriz de cana.
Foi neste cenário que a bióloga Rhayedja Swellen realizou um estudo sobre como se estrutura a avifauna em paisagens fragmentadas. Sua monografia foi um sucesso, públicada na Science e ela ganhou muitos prêmios, dedicando um deles ao Prof. Felipe Melo da UFPE por tê-la feito gostar da ecologia e ensiná-lo a usar o R.
Rhayedja amostrou 10 fragmentos de floresta numa paisagem como a da foto acima. Anotou todas as espécies de aves e suas abundâncias. Graças à generosidade dela, tivemos acesso aos seus dados.
esp<-c(paste0("sp", 1:15)) # criei o vetor com as espécies, serão 15 para este exercício.
frags<-c(paste0("f", 1:10)) # criei o vetor com as espécies, serão 10 para este exercício.
usina<-matrix(sample(0:15, size = 10*15, replace = TRUE), nrow = 10, ncol = 15)# criei uma matriz com 10 linas (espécies) e 15 colunas (fragmentos)
colnames(usina)<-esp # atribui os nomes de linhas e colunas da matriz
rownames(usina)<-frags
usina # matriz criadas com abundÂncias aleatórias, cada um de vocês vai gerar resultados diferentes
## sp1 sp2 sp3 sp4 sp5 sp6 sp7 sp8 sp9 sp10 sp11 sp12 sp13 sp14 sp15
## f1 1 2 14 2 8 9 6 12 12 7 14 5 4 8 6
## f2 5 12 7 6 5 13 0 0 1 9 6 2 5 4 8
## f3 1 10 0 13 11 9 10 1 5 15 4 10 13 2 8
## f4 4 9 12 7 8 11 5 10 5 7 3 15 7 8 6
## f5 5 7 7 14 4 0 12 5 2 15 5 14 0 15 5
## f6 6 4 3 15 15 7 4 11 5 9 6 1 2 6 8
## f7 5 4 10 9 15 9 4 3 8 1 0 12 2 13 3
## f8 12 14 1 4 4 2 10 15 14 10 3 11 1 3 5
## f9 1 3 0 8 15 3 2 12 10 8 15 1 11 2 1
## f10 2 0 0 9 7 0 3 8 7 1 13 12 8 15 4
usina<-as.data.frame(usina)
usina[usina==3]<-0
usina[usina==4]<-0
usina[usina==13]<-0 # troquei valores iguais a 3 e 13 por zeor para aumentar as ausências e ficar mais realístico.
usina # agora é um data frame com espécies nas colunas e fragmentos nas linhas.
## sp1 sp2 sp3 sp4 sp5 sp6 sp7 sp8 sp9 sp10 sp11 sp12 sp13 sp14 sp15
## f1 1 2 14 2 8 9 6 12 12 7 14 5 0 8 6
## f2 5 12 7 6 5 0 0 0 1 9 6 2 5 0 8
## f3 1 10 0 0 11 9 10 1 5 15 0 10 0 2 8
## f4 0 9 12 7 8 11 5 10 5 7 0 15 7 8 6
## f5 5 7 7 14 0 0 12 5 2 15 5 14 0 15 5
## f6 6 0 0 15 15 7 0 11 5 9 6 1 2 6 8
## f7 5 0 10 9 15 9 0 0 8 1 0 12 2 0 0
## f8 12 14 1 0 0 2 10 15 14 10 0 11 1 0 5
## f9 1 0 0 8 15 0 2 12 10 8 15 1 11 2 1
## f10 2 0 0 9 7 0 0 8 7 1 0 12 8 15 0
library(vegan)
specnumber(usina) # Me dá o número de espécies de cada um dos 10 fragmetnos amostrados
## f1 f2 f3 f4 f5 f6 f7 f8 f9 f10
## 14 11 11 13 12 12 9 11 12 9
list(diversity(usina, index = "shannon"), diversity(usina, index = "simpson")) # a LINHA [[1]] corresponde a Shannon e a linha [[2]] a Simpson
## [[1]]
## f1 f2 f3 f4 f5 f6 f7 f8
## 2.469857 2.267234 2.188193 2.513231 2.344837 2.320360 2.022053 2.172874
## f9 f10
## 2.169385 2.029545
##
## [[2]]
## f1 f2 f3 f4 f5 f6 f7
## 0.9070844 0.8875115 0.8777513 0.9147107 0.8942684 0.8909552 0.8561793
## f8 f9 f10
## 0.8766759 0.8710114 0.8569628
library(ggplot2)
sp.ac<-specaccum(usina) # Note com quantas amostras já se tem as 15 espécies
sp.ac
## Species Accumulation Curve
## Accumulation method: exact
## Call: specaccum(comm = usina)
##
##
## Sites 1.000000 2.000000 3.000000 4.000000 5.000000 6 7 8 9 10
## Richness 11.400000 14.022222 14.766667 14.957143 14.996032 15 15 15 15 15
## sd 1.496663 0.994233 0.489926 0.225848 0.062869 0 0 0 0 0
sp.ac<-data.frame(sp.ac$sites,sp.ac$richness, sp.ac$sd)
sp.ac
## sp.ac.sites sp.ac.richness sp.ac.sd
## 1 1 11.40000 1.49666295
## 2 2 14.02222 0.99423338
## 3 3 14.76667 0.48992589
## 4 4 14.95714 0.22584798
## 5 5 14.99603 0.06286897
## 6 6 15.00000 0.00000000
## 7 7 15.00000 0.00000000
## 8 8 15.00000 0.00000000
## 9 9 15.00000 0.00000000
## 10 10 15.00000 0.00000000
names(sp.ac)<-c("frag","riq","dp") # mudando os nomes das colunas
ggplot(sp.ac, aes(frag, riq))+geom_line()+
geom_point()+labs(x="Número de framgentos", y="Núemro acumulado de espécie") # grafico gerado
Mas o programa gerou um desvio padrão “dp” resultado do processo de rarefação, dá pra plotar ele também
ggplot(sp.ac, aes(frag, riq))+geom_line()+
geom_point()+labs(x="Número de framgentos", y="Núemro acumulado de espécie")+
geom_ribbon(aes(ymin=(riq-dp), ymax=(riq+dp)), alpha= 0.1)+
theme_bw()
Notem que o desvio padrão chega a zero muito rápido, sugerido que não há mais imprecisão para encontrar o número de espécies depois de algumas amostras
simi.bray<-vegdist(usina, method = "bray") # gerei uma matriz de dissimilaridade usando o método de Bray-Curtis que considera as abundâncias
simi.bray # veja amatriz
## f1 f2 f3 f4 f5 f6 f7
## f2 0.5465116
## f3 0.4468085 0.5135135
## f4 0.2685185 0.4545455 0.3541667
## f5 0.4811321 0.4534884 0.4361702 0.3796296
## f6 0.3908629 0.4522293 0.4797688 0.4129353 0.4720812
## f7 0.5028249 0.5766423 0.5163399 0.4033149 0.5932203 0.4444444
## f8 0.4726368 0.5527950 0.3898305 0.4536585 0.4427861 0.5698925 0.6506024
## f9 0.3750000 0.5526316 0.6190476 0.4897959 0.6354167 0.3220339 0.5414013
## f10 0.5542857 0.6740741 0.6423841 0.3854749 0.4742857 0.4875000 0.4285714
## f8 f9
## f2
## f3
## f4
## f5
## f6
## f7
## f8
## f9 0.6022099
## f10 0.6341463 0.4451613
#Explore os diferetnes métodos que a função oferece como "jaccard" e "euclid" e entenda um pouco de suas diferenças, vá adicionando abaixo
# Agora vamos graficar os 10 fragmentos para ver como eles se distribuem no espaço da diversidade beta. Pàra isso é preciso "plotar' as especies num espaço bi-dimensional. Vamos usar a função metaMDS
simi.nmds<-metaMDS(usina, distance = "bray")
## Wisconsin double standardization
## Run 0 stress 0.1280132
## Run 1 stress 0.1706883
## Run 2 stress 0.183861
## Run 3 stress 0.201141
## Run 4 stress 0.1185403
## ... New best solution
## ... Procrustes: rmse 0.06891023 max resid 0.1812765
## Run 5 stress 0.2232905
## Run 6 stress 0.1185403
## ... Procrustes: rmse 5.570907e-05 max resid 0.0001097026
## ... Similar to previous best
## Run 7 stress 0.1992178
## Run 8 stress 0.1323852
## Run 9 stress 0.1850302
## Run 10 stress 0.1185403
## ... New best solution
## ... Procrustes: rmse 4.037983e-05 max resid 8.425856e-05
## ... Similar to previous best
## Run 11 stress 0.1896561
## Run 12 stress 0.1457895
## Run 13 stress 0.1752519
## Run 14 stress 0.1320742
## Run 15 stress 0.2787393
## Run 16 stress 0.1706883
## Run 17 stress 0.1185404
## ... Procrustes: rmse 0.0001145382 max resid 0.0002482052
## ... Similar to previous best
## Run 18 stress 0.1752519
## Run 19 stress 0.1457888
## Run 20 stress 0.1992178
## *** Solution reached
dat.simi<-as.data.frame(simi.nmds$points) # extraí as coordenadas dos eixos x e y para plotar as comunidades
ggplot(dat.simi, aes(MDS1, MDS2))+geom_point(size=2)+
theme_bw()+geom_text(aes(label=rownames(dat.simi)),hjust=0, vjust=-1) # gráfico com as comunidades ordenadas segundo sua similaridade
Veja a distribuição dos pontos e compare com os valores da matriz de similaridade