Comprimento rostro cloacal (CRC), comparação de amostras (Anura) por estação do ano e relação linear com temperatura e precipitação pluviométrica usando R
Este é um texto didático usado para ministrar um minicurso no 1\(^{o}\) ENCONTRO AMAZÔNICO DE CIÊNCIAS AMBIENTAIS: COP 30 e Amazônia no Contexto das Mudanças Climáticas .
1 Comprimento Rostro-Cloacal (CRC)
É uma medida amplamente utilizada em estudos com anfíbios, especialmente em pesquisas de ecologia, biologia evolutiva e monitoramento populacional. Essa medida se refere à distância entre a ponta do focinho (rostro) e a abertura cloacal, localizada na base da cauda.
Essa medida é preferida porque é fácil de obter e fornece um dado consistente que pode ser utilizado em várias análises, incluindo estudos de crescimento, desenvolvimento e respostas a fatores ambientais.
2 Análise descritiva
A análise descritiva desempenha um papel crucial na análise de dados, pois fornece uma visão abrangente e inicial sobre o comportamento e as características dos dados. Ela permite identificar padrões, tendências e anomalias, facilitando uma compreensão mais profunda antes de aplicar métodos estatísticos mais complexos.
Dados 1: Comprimento rostro-cloacal (CRC) de machos de Physalaemus nattereri (Rã-Quatro-Olhos) amostrados em diferentes estações do ano com armadilhas de interceptação e queda na Região Noroeste do estado de São Paulo.
- da Silva, F. R., & Rossa-Feres, D. C. ( 2010). “Seasonal variation in body size of tropical anuran amphibians.” Herpetology Notes, 3, 205–9.
2.1 Total por estação
attach(dados1)
= table(dados1$Estacao)
fi = round(prop.table(fi)*100,2)
fr cbind(fi, fr)
fi fr
Chuvosa 28 54.9
Seca 23 45.1
2.2 Média por estação
aggregate(CRC ~ Estacao, dados1, mean)
Estacao CRC
1 Chuvosa 3.695357
2 Seca 3.260870
boxplot(CRC ~ Estacao, dados1)
3 Testes de Hipóteses
O CRC dos machos (Rã-Quatro-Olhos) é maior em qual estação ?
- Normalidade dos dados:
= dados1[dados1$Estacao=="Chuvosa",]$CRC
crc_chuva
hist(crc_chuva,
xlab = "Dados do CRC - chuva",
ylab = "Probabilidade",
probability = TRUE,
main = "Histograma do CRC da estação chuvosa")
# acrescentando a curva da Normal
curve(dnorm(x, mean = mean(crc_chuva),sd = sd(crc_chuva)),
col = "blue", lw = 2, add = TRUE)
Note que os dados estão bem distribuídos e em formato de sino, características da distribuição Normal. Porém, só podemos confirmar isso fazendo um teste de normalidade.
\(H_0:\) os dados seguem uma distribuição Normal.
\(H_1:\) os dados NÃO seguem uma distribuição Normal.
A partir do teste de Shapiro-Wilk podemos afirmar que os dados seguem uma distribuição Normal (valor-p = 0,1491). Temos as mesmas conclusões para a estação seca (valor-p = 0,1165), apesar de que graficamente os dados não apresentam forma simétrica. Por isso a importância de fazer o teste sempre. Não devemos tomar decisões apenas com a visualização gráfica.
shapiro.test(crc_chuva)
Shapiro-Wilk normality test
data: crc_chuva
W = 0.94511, p-value = 0.1491
= dados1[dados1$Estacao=="Seca",]$CRC
crc_seca
hist(crc_seca,
xlab = "Dados do CRC - Seca",
ylab = "Probabilidade",
probability = TRUE,
main = "Histograma do CRC da estação seca")
# acrescentando a curva da Normal
curve(dnorm(x, mean = mean(crc_seca),sd = sd(crc_seca)),
col = "blue", lw = 2, add = TRUE)
shapiro.test(crc_seca)
Shapiro-Wilk normality test
data: crc_seca
W = 0.93127, p-value = 0.1165
3.1 Teste t de Student com variâncias iguais
Verificada a normalidade dos dados, podemos seguir com o teste t, mas antes, precisamos averiguar se as variâncias dos grupos são iguais ou diferentes.
\[H_0: \sigma^{2}_{1} = \sigma^{2}_{2}\]
\[H_1: \sigma^{2}_{1} \neq \sigma^{2}_{2}\]
Podemos concluir a partir dos resultados que as variâncias são iguais (valor-p = 0,1107). Utilizaremos esta informação para configuração do tipo de teste t de Student que será realizado.
var.test(crc_chuva,crc_seca)
F test to compare two variances
data: crc_chuva and crc_seca
F = 1.9613, num df = 27, denom df = 22, p-value = 0.1107
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.8532355 4.3570976
sample estimates:
ratio of variances
1.961284
### outra maneira
# var.test(CRC ~ Estacao, dados1)
Tipos de testes para igualdade de variâncias e quando usar:
var.test
: Quando você tem exatamente dois grupos e pode assumir normalidade.
bartlett.test
: Quando você tem mais de dois grupos e pode assumir normalidade.
leveneTest
: Quando você tem mais de dois grupos e não pode garantir a normalidade dos dados.
Hipóteses do teste t de Student
A formulação das hipóteses é de fundamental importância, visto que, podemos tomar decisões equivocadas se estas forem formuladas de maneira inadequada. O pesquisador tem motivos para acreditar que o CRC dos machos (Rã-Quatro-Olhos) é maior na estação chuvosa. Colocaremos isto como as seguintes hipóteses:
\[H_{0}: \mu_{chuva} \geq \mu_{seca}\]
\[H_{1}: \mu_{chuva} < \mu_{seca}\] \(\mu_{chuva}:\) média do CRC na estação chuvosa;
\(\mu_{seca}:\) média do CRC na estação seca.
Observe que passamos para a função t.test
o argumento var.equal = TRUE
, indicando que foi feito o teste e confirmada a igualdade de variâncias.
Como reportar o resultado do teste:
Podemos afirmar com 95% de confiabilidade que há fortes evidências contra a hipótese de nulidade (valor-p \(\approx 0,000\)), ou seja, o CRC dos machos (Rã-Quatro-Olhos) é maior na estação chuvosa do que na estação seca.
t.test(crc_chuva,crc_seca, alternative = "greater", var.equal = TRUE)
Two Sample t-test
data: crc_chuva and crc_seca
t = 4.1524, df = 49, p-value = 6.551e-05
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
0.2590596 Inf
sample estimates:
mean of x mean of y
3.695357 3.260870
### forma alternativa
# t.test(CRC ~ Estacao, data = dados1, alternative = "greater", var.equal = TRUE)
Dados 2: Comprimento rostro-cloacal (CRC) de fêmeas de Leptodactylus podicipinus (Rã do ventre salpicado) amostradas em diferentes estações do ano com armadilhas de interceptação e queda na Região Noroeste do estado de São Paulo.
- da Silva, F. R., & Rossa-Feres, D. C. ( 2010). “Seasonal variation in body size of tropical anuran amphibians.” Herpetology Notes, 3, 205–9.
Utilize os dados 2 para fazer:
- Análise descritiva.
- Testes de Normalidade.
- Teste de igualdade de variâncias.
- Teste t de Student.
4 Análise de Regressão e Correlação
4.1 Coeficiente de Correlação de Pearson - r
Medida estatística que descreve a correlação entre duas variáveis quantitativas. É representada por um valor entre -1 e 1, em que -1 é uma correlação negativa perfeita, 1 é uma correlação positiva perfeita e 0 indica ausência de correlação. O gráfico de dispersão nos dá uma ideia do quanto duas variáveis podem estar correlacionadas, porém, somente o coeficiente de correlação pode verificar está hipótese a partir de um teste. O coeficiente de correlação linear de Pearson é dado por:
\[ r = \dfrac{\displaystyle \sum_{i = 1}^{n}(x_{i}-\bar{x})(y_{i}-\bar{y})}{\displaystyle \sqrt{(\sum_{i = 1}^{n}(x_{i}-\bar{x})^{2})(\sum_{i = 1}(y_{i}-\bar{y})^{2}})} \]
As estimativas dos parâmetros na Regressão Linear Simples (RLS) são dados a partir da ANOVA (análise de variância). Com ela, verificamos se estas estimativas são significativas bem como, a qualidade do ajuste com o coeficiente de determinação que é dado pelo quadrado do coeficiente de correlação, ou seja, \(R^{2}\) ou \(r^{2}\). No R
, podemos testar com a função cor.test()
, as seguintes hipóteses:
\(H_{0}: \rho_{x,y} = 0\) (ausência de associação linear);
\(H_{1}: \rho_{x,y} \neq 0\) (presença de associação linear).
4.2 Coeficiente de determinação (\(R^{2}\))
O coeficiente de determinação \(R^{2}\) é uma medida estatística que representa a proporção da variabilidade da variável dependente (Y) que é explicada pelos regressores (variáveis independentes, X) em um modelo de regressão linear. Em outras palavras, \(R^{2}\) indica a qualidade do ajuste do modelo aos dados observados. Ele é dado pela razão entre SQE (variação devida aos tratamentos) pela SQT (variação total dos valores observados).
\[R^{2} = \dfrac{SQE}{SQT},\]
em que \(0 \leq R^{2} \leq 1\).
Dados 3: Temperatura média anual, precipitação anual e o tamanho médio do comprimento rostro-cloacal (CRC) de populações de Dendropsophus minutus (Anura:Hylidae) amostradas em 109 localidades no Brasil.
- da Silva, F. R., & Rossa-Feres, D. C. ( 2010). “Seasonal variation in body size of tropical anuran amphibians.” Herpetology Notes, 3, 205–9.
4.3 Hipóteses do modelo de regressão
\[Y = \beta_{0} + \beta_{1}X + e_{i},\]
em que, Y é a variável dependente (ou variável resposta); X a variável independente (também chamada de explicativa, preditora ou covariável); \(\beta_{0}\) e \(\beta_{1}\) são parâmetros que devem ser estimados; e \(e_{i}\) é o erro aleatório.
A partir de métodos de estimação, pode-se chegar ao seguinte modelo:
\[\hat{y}_{i} = \hat{\beta}_{0} + \hat{\beta}_{1}x,\] em que \(\hat{\beta}_{0}\) e \(\hat{\beta}_{1}\) são os estimadores dos parâmetros do modelo, dados por
\[\hat{\beta}_{0} = \bar{y} -\hat{\beta}_{1}\bar{x}, \quad e \]
\[\hat{\beta}_{1} = \dfrac{\displaystyle \sum_{i = 1}^{n}x_{i}y_{i}-n\bar{x}\bar{y}}{\displaystyle \sum_{i = 1}^{n}x_{i}^{2}-n\bar{x}^{2}}\]
Hipóteses do modelo de regressão linear simples
\(H_{0}: \beta_{1} = 0\) (não existe RLS de Y em X)
\(H_{1}: \beta_{1} \neq 0\) (existe RLS de Y em X)
Os principais pressupostos da análise de regressão linear simples são:
Linearidade
: A relação entre a variável dependente e as variáveis independentes é linear. Isso significa que o efeito de uma mudança em uma variável independente sobre a variável dependente é constante, independentemente dos valores das outras variáveis independentes.
Independência dos resíduos
: Os resíduos (erros de previsão) não estão correlacionados entre si. Isso implica que os erros em uma observação não estão relacionados aos erros em outras observações.
Homocedasticidade
: A variabilidade dos erros (ou resíduos) é constante em todas as faixas de valores das variáveis independentes. Em outras palavras, não deve haver nenhum padrão discernível nos resíduos ao longo do tempo ou em relação aos valores previstos.
Normalidade dos resíduos
: Os resíduos seguem uma distribuição normal. Isso implica que os erros de previsão são distribuídos simetricamente em torno de zero e não exibem nenhum padrão discernível quando plotados em relação aos valores previstos.
Questão: O tamanho do CRC sofre alterações com o aumento o diminuição da temperatura?
Hipótese:
\(H_{0}: \beta_{1} = 0\) (o CRC não altera com a temperatura)
\(H_{1}: \beta_{1} \neq 0\) (o CRC altera com a temperatura)
4.4 Estimação dos parâmetros do modelo
Podemos notar que os betas do modelo (\(\beta_{0} = 16,2\); \(\beta_{1} = 0,26905\)) foram significativos (valor-p < 0,01). Isto é, a cada unidade da temperatura, há um aumento de 0,26905 unidades no tamanho do CRC. Como podemos ver no gráfico, são grandezas diretamente proporcionais. Além disso, aproximantente 27% da variabilidade do CRC é explicada pela temperatura (\(r^{2} \approx 0,2667\)). Também devemos analisar o valor-p da estatística F (38,92) que foi bem próximo de zero (0,00) indicando que há fortes evidências a favor da hipótese de nulidade, ou seja, há regressão estatísticamente significativa nos dados.
= lm(bd.reg$CRC ~ bd.reg$Temperatura, data = bd.reg)
mod1 = summary(mod1)
res_mod1 print(res_mod1)
Call:
lm(formula = bd.reg$CRC ~ bd.reg$Temperatura, data = bd.reg)
Residuals:
Min 1Q Median 3Q Max
-3.4535 -0.7784 0.0888 0.9168 3.1868
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 16.23467 0.91368 17.768 < 2e-16 ***
bd.reg$Temperatura 0.26905 0.04313 6.239 9.01e-09 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 1.442 on 107 degrees of freedom
Multiple R-squared: 0.2667, Adjusted R-squared: 0.2599
F-statistic: 38.92 on 1 and 107 DF, p-value: 9.011e-09
plot(bd.reg$Temperatura,bd.reg$CRC,
xlab = "Temperatura", ylab = "CRC")
abline(mod1, col = "blue")
4.5 Análise de resíduos do modelo
Análises gráficas
Resíduos em função dos valores estimados (gráfico 1) : se os resíduos se distribuem de maneira razoavelmente aleatória sem nenhum padrão em formato de U ou V, atendendo os pressupostos de independência e a homocedasticidade.
Normalidade dos resíduos (gráfico 2): se pontos estão próximos à reta teórica, o pressuposto de normalidade dos resíduos é aceito.
(Gráfico 3) O mesmo que o primeiro, mas, com os resíduos padronizados.
Distâncias de Cook (gráfico 4): medida de influência que pode indicar a presença de outliers quando possui valor maior do que 1.
plot(mod1)
Teste de normalidade dos resíduos
Podemos concluir que os resíduos do modelo são normalmente distribuídos. Isto implica que podemos usar este modelo para estimar e até mesmo predizer os valores de CRC a partir da variável explivativa, temperatura.
shapiro.test(mod1$residuals)
Shapiro-Wilk normality test
data: mod1$residuals
W = 0.98547, p-value = 0.2857
4.6 Predições com o modelo ajustado
\[ y (CRC) = 16,23467 + 0,26905\times x\]
As temperaturas variam entre 14,28 e 27,45 graus Celsius. Qual seria o valor predito para 14 e 28 graus Celsius, respectivamente?
summary(bd.reg$Temperatura)
Min. 1st Qu. Median Mean 3rd Qu. Max.
14.28 18.17 20.83 20.94 23.56 27.45
- Existe correlação/regressão entre CRC e precipitação?
Referência
- Da Silva FR, Gonçalves-Souza T, Paterno GB, Provete DB, Vancine MH. 2022. Análises ecológicas no R. Nupeea : Recife, PE, Canal 6 : São Paulo. 640 p. ISBN 978-85-7917-564-0.