🌿 Introdução

A análise de comunidades biológicas (como a estrutura de espécies de peixes, macroinvertebrados ou flora) em estudos ambientais exige ferramentas estatísticas que lidem com a alta dimensionalidade e a natureza frequentemente não-normal desses dados. O nMDS, a PERMANOVA e o SIMPER são técnicas poderosas para este fim.


1. Escalonamento Multidimensional Não Métrico (nMDS)

O nMDS (non-metric Multidimensional Scaling) é uma técnica de ordenação multivariada. Diferentemente do PCA, ele não assume linearidade nem distribuição normal dos dados.

Exemplo (a) - Avaliação de Impacto em Ictiofauna

Imagine 10 áreas de amostragem de peixes em um rio: 5 a montante (Referência) e 5 a jusante (Impacto) de um empreendimento. A matriz de dados é a abundância das espécies.

# Grupos
grupo <- rep(c("Referência", "Impacto"), each = 5)

# Dados simulados de abundância de 8 espécies de peixes
# Referência: mais diversidade e abundância de espécies 'sensíveis' (A, B)
# Impacto: mais abundância de espécies 'tolerantes' (G, H) e menos diversidade
dados_comunidade <- matrix(
  c(rpois(5, 5), rpois(5, 1), rpois(5, 3), rpois(5, 1), # Espécies A, B (Sensíveis)
    rpois(5, 1), rpois(5, 4), rpois(5, 1), rpois(5, 4), # Espécies C, D
    rpois(5, 0), rpois(5, 0), rpois(5, 1), rpois(5, 5), # Espécies E, F
    rpois(5, 1), rpois(5, 8), rpois(5, 2), rpois(5, 10)), # Espécies G, H (Tolerantes)
  ncol = 8, byrow = FALSE)
colnames(dados_comunidade) <- paste0("Esp_", LETTERS[1:8])
rownames(dados_comunidade) <- paste0(grupo, "_", 1:5)

# nMDS
set.seed(42) # Reprodutibilidade do nMDS
nmds_res <- metaMDS(dados_comunidade, distance = "bray", k = 2, trymax = 100)
## Wisconsin double standardization
## Run 0 stress 0.02150762 
## Run 1 stress 0.02979739 
## Run 2 stress 0.02979738 
## Run 3 stress 0.0342005 
## Run 4 stress 0.03420051 
## Run 5 stress 0.03655497 
## Run 6 stress 0.02150759 
## ... New best solution
## ... Procrustes: rmse 4.408272e-05  max resid 8.520295e-05 
## ... Similar to previous best
## Run 7 stress 0.03655496 
## Run 8 stress 0.0215077 
## ... Procrustes: rmse 0.0001063557  max resid 0.0002066402 
## ... Similar to previous best
## Run 9 stress 0.03420054 
## Run 10 stress 0.02150761 
## ... Procrustes: rmse 3.466624e-05  max resid 6.7669e-05 
## ... Similar to previous best
## Run 11 stress 0.03655665 
## Run 12 stress 0.02150763 
## ... Procrustes: rmse 5.279721e-05  max resid 0.0001021272 
## ... Similar to previous best
## Run 13 stress 0.02150758 
## ... New best solution
## ... Procrustes: rmse 5.873879e-05  max resid 0.0001148869 
## ... Similar to previous best
## Run 14 stress 0.3153592 
## Run 15 stress 0.02150765 
## ... Procrustes: rmse 0.000135017  max resid 0.0002636286 
## ... Similar to previous best
## Run 16 stress 0.02979737 
## Run 17 stress 0.02150759 
## ... Procrustes: rmse 6.083466e-05  max resid 0.0001195566 
## ... Similar to previous best
## Run 18 stress 0.03420051 
## Run 19 stress 0.02150765 
## ... Procrustes: rmse 0.0001032496  max resid 0.000201052 
## ... Similar to previous best
## Run 20 stress 0.03420054 
## *** Best solution repeated 4 times
# Gráfico de nMDS
dados_nmds <- as.data.frame(scores(nmds_res, display = "sites"))
dados_nmds$Grupo <- grupo

ggplot(dados_nmds, aes(x = NMDS1, y = NMDS2, color = Grupo)) +
  geom_point(size = 3) +
  stat_ellipse(level = 0.95) +
  labs(title = paste0("nMDS da Ictiofauna (Stress: ", round(nmds_res$stress, 3), ")"),
       caption = "Bray-Curtis Distance") +
  theme_minimal() +
  scale_color_manual(values = c("Referência" = "blue", "Impacto" = "red"))

Interpretação Esperada: As amostras de Impacto devem se separar no biplot nMDS das amostras de Referência, indicando que a composição de espécies é significativamente diferente (devido à perda de sensíveis e/ou aumento de tolerantes).

2. Análise de Variância Permutacional (PERMANOVA)

A PERMANOVA (Permutational Multivariate Analysis of Variance) é usada para testar se há diferenças significativas na estrutura de comunidades (composição e abundância/presença) entre dois ou mais grupos definidos (fatores).

Exemplo (b) - Testando a Hipótese de Impacto

Usando os dados de ictiofauna do exemplo (a). Queremos confirmar estatisticamente se o grupo ‘Referência’ é diferente do grupo ‘Impacto’.

# Matriz de Distância (Dissimilaridade de Bray-Curtis)
matriz_distancia <- vegdist(dados_comunidade, method = "bray")

# PERMANOVA
permanova_res <- adonis2(matriz_distancia ~ grupo, data = data.frame(grupo = grupo), permutations = 999)

# Exibe os resultados
permanova_res
## Permutation test for adonis under reduced model
## Permutation: free
## Number of permutations: 999
## 
## adonis2(formula = matriz_distancia ~ grupo, data = data.frame(grupo = grupo), permutations = 999)
##          Df SumOfSqs      R2      F Pr(>F)   
## Model     1  0.93610 0.74706 23.628  0.009 **
## Residual  8  0.31694 0.25294                 
## Total     9  1.25304 1.00000                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Interpretação Esperada: Se o \(p\)-value for baixo (ex: \(p < 0.05\)), confirma-se que a estrutura de ictiofauna é significativamente diferente entre as áreas de Referência e Impacto. O \(R^2\) indicará a força dessa diferença.

3. Porcentagem de Similaridade (SIMPER)

O SIMPER (Similarity Percentages) não é um teste de hipótese, mas uma análise descritiva que complementa a PERMANOVA.

Exemplo (c) - Identificando as Espécies-Chave do Impacto

Usando os mesmos dados e grupos.

# SIMPER
simper_res <- simper(dados_comunidade, group = grupo)

# Exibe a contribuição de dissimilaridade entre Referência e Impacto
summary(simper_res, ordered = TRUE, max.species = 5)
## 
## Contrast: Referência_Impacto 
## 
##        average       sd    ratio      ava      avb cumsum     p    
## Esp_H  0.18023  0.07931  2.27300  3.00000 13.60000  0.275 0.001 ***
## Esp_G  0.12191  0.04074  2.99200  0.60000  7.60000  0.460 0.001 ***
## Esp_F  0.11279  0.03001  3.75800  1.20000  7.80000  0.632 0.001 ***
## Esp_A  0.09933  0.03069  3.23600  6.80000  1.00000  0.783 0.001 ***
## Esp_C  0.05390  0.03803  1.41700  1.80000  4.80000  0.866 0.098 .  
## Esp_D  0.05159  0.03461  1.49000  1.20000  3.80000  0.944 0.023 *  
## Esp_B  0.03659  0.02792  1.31100  3.60000  1.60000  1.000 0.270    
## Esp_E  0.00000  0.00000      NaN  0.00000  0.00000  1.000    NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Permutation: free
## Number of permutations: 999

Interpretação Esperada: O resultado mostrará quais espécies (e.g., Esp_H e Esp_G) contribuíram mais para a dissimilaridade entre os grupos. No cenário de impacto, espera-se que as espécies tolerantes ou invasoras tenham maior contribuição.

📊 Conclusões para Gestão Ambiental