planeco:roteiro:07-class
Diferenças
Esta página mostra as diferenças entre as duas revisões da página.
Ambos os lados da revisão anteriorRevisão anteriorPróxima revisão | Revisão anterior | ||
planeco:roteiro:07-class [2017/03/22 14:24] – [Checando as premissas] amzmartini | planeco:roteiro:07-class [2024/01/09 18:38] (Atual) – edição externa 127.0.0.1 | ||
---|---|---|---|
Linha 1: | Linha 1: | ||
+ | ESSA PAGINA NAO ESTÁ EM USO, ESTÁ APENAS DE BACKUP COMO VERSÃO ORIGINAL PARA AS VERSÕES R E RCMDR DO ROTEIRO | ||
+ | |||
====== Testes Clássicos ====== | ====== Testes Clássicos ====== | ||
Linha 93: | Linha 95: | ||
Agora vamos checar no R com esses mesmos dados: | Agora vamos checar no R com esses mesmos dados: | ||
+ | 1) Crie um diretório (//i.e.// uma pasta) para você | ||
- | 1) Abra o R | + | 2) Abra o R no seu computador e mude o diretório de trabalho para o diretório que você criou, usando o menu **// |
- | 2) Crie as variáveis x e y: | + | 3) Crie as variáveis x e y: |
< | < | ||
x<- c(1, | x<- c(1, | ||
Linha 102: | Linha 105: | ||
</ | </ | ||
- | 3) Ajuste um modelo de regressão linear simples | + | 4) Ajuste um modelo de regressão linear simples |
< | < | ||
lm.xy< | lm.xy< | ||
Linha 111: | Linha 114: | ||
====Checando as premissas==== | ====Checando as premissas==== | ||
- | Ok, agora que você entendeu como são calculados os resíduos, vamos trabalhar com conjuntos de dados maiores para podermos entender como checar as premissas da análise de regressão linear de uma maneira um pouco mais realista: | + | Ok, agora que você entendeu como são calculados os erros/resíduos, vamos trabalhar com conjuntos de dados maiores para podermos entender como checar as premissas da análise de regressão linear de uma maneira um pouco mais realista: |
+ | |||
+ | Baixe os arquivos de dados para o seu diretório: | ||
- | Baixe os arquivos de dados: | ||
* {{ : | * {{ : | ||
* {{ : | * {{ : | ||
* {{ : | * {{ : | ||
* {{ : | * {{ : | ||
+ | |||
+ | |||
+ | <WRAP center round info 90%> | ||
+ | **Descrição dos conjuntos de dados:** | ||
+ | |||
+ | Um grupo de pesquisadores vem trabalhando há muito tempo com peixes da família Rivulidae que ocorrem em lagos temporários. Esses peixes crescem e se reproduzem nesses lagos temporários durante o período de chuvas e seus ovos ficam dormentes durante o período de seca. | ||
+ | |||
+ | Do total de lagos temporários existentes, foram sorteados 20 lagos e na época chuvosa os seguintes dados foram coletados: | ||
+ | * - Biomassa de algas | ||
+ | * - Biomassa de insetos aquáticos | ||
+ | * - Volume do lago | ||
+ | * - Biomassa de peixes herbívoros | ||
+ | * - Biomassa de peixes insetívoros | ||
+ | * - Número de indivíduos adultos da espécie mais abundante (// | ||
+ | |||
+ | - O primeiro conjunto de dados (algas_peixes.csv) foi obtido com o objetivo de analisar se a biomassa de algas existente nos lagos influencia a biomassa de peixes herbívoros e se essa relação é linear. | ||
+ | |||
+ | - O segundo conjunto de dados (algas_peixes2.csv) foi obtido com o mesmo objetivo anterior, mas em outros 20 lagos diferentes | ||
+ | |||
+ | - O terceiro conjunto de dados (insetos_peixes.csv) foi obtido com o objetivo de analisar se a biomassa de insetos existente nos lagos influencia a biomassa de peixes insetívoros e se essa relação é linear. | ||
+ | |||
+ | - O quarto conjunto de dados (vol_inds.csv) foi obtido com o objetivo de analisar se o volume de água de cada lago afeta o número de indivíduos da espécie // | ||
+ | |||
+ | </ | ||
Linha 126: | Linha 155: | ||
O primeiro passo é ajustar um modelo de regressão linear aos dados obtidos. | O primeiro passo é ajustar um modelo de regressão linear aos dados obtidos. | ||
- | /* | + | |
+ | Inicialmente vamos trabalhar com o conjunto de dados // | ||
+ | |||
+ | Importe o arquivo para o R e conheça os dados: | ||
< | < | ||
- | lm.xy<-lm(y~x) | + | algas.peixes |
- | summary(lm.xy) | + | head(algas.peixes) |
+ | summary(algas.peixes) | ||
</ | </ | ||
- | */ | ||
+ | Avalie visualmente a relação entre as variáveis com o gráfico // | ||
+ | < | ||
+ | scatterplot(BIOMASSA_PEIXES_HERB~BIOMASSA_ALGAS, | ||
+ | </ | ||
- | Vamos olhar especificamente os resíduos: | + | Ajuste um modelo de regressão linear para as variáveis, usando a função |
- | /* | + | |
< | < | ||
- | lm.xy$residuals | + | lm.algas.peixes< |
+ | summary (lm.algas.peixes) | ||
</ | </ | ||
- | */ | ||
- | ===Como saber se os resíduos seguem uma distribuição normal?=== | + | Use a função " |
+ | < | ||
+ | names(lm.algas.peixes) | ||
+ | </ | ||
+ | |||
+ | Se você quiser olhar detalhadamente alguma dessas informações, | ||
+ | < | ||
+ | lm.algas.peixes$residuals | ||
+ | </ | ||
+ | |||
+ | O mesmo pode ser feito para conhecer os valores ajustados (// | ||
+ | |||
+ | ===Como saber se os erros/resíduos seguem uma distribuição normal?=== | ||
Lembre dos métodos usados no tutorial de [[planeco: | Lembre dos métodos usados no tutorial de [[planeco: | ||
- | * Histograma | ||
- | * Boxplot | ||
- | * Gráfico Quantil-Quantil | ||
+ | Histograma | ||
+ | < | ||
+ | hist(lm.algas.peixes$residuals) | ||
+ | </ | ||
+ | |||
+ | Boxplot | ||
+ | < | ||
+ | boxplot(lm.algas.peixes$residuals) | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | Gráfico Quantil-Quantil | ||
+ | < | ||
+ | qqnorm(lm.algas.peixes$residuals) | ||
+ | qqline(lm.algas.peixes$residuals) | ||
+ | </ | ||
- | ===Como saber se a variância dos resíduos é constante? | + | ===Como saber se a variância dos erros/resíduos é constante? |
- | Para qualquer valor de X (ou de Yobservado, ou de Yestimado) os valores máximos e mínimos dos resíduos devem ser similares. Então, podemos fazer um gráfico em que relacionamos os valores de Yestimado (ou seja, os valores de Y que são indicados pela reta de regressão) e os valores dos resíduos | + | Para qualquer valor de X (ou de //Yobservado//, ou de //Yestimado//) os valores máximos e mínimos dos resíduos devem ser similares. Então, podemos fazer um gráfico em que relacionamos os valores de //Yestimado// (ou seja, os valores de Y que são indicados pela reta de regressão) e os valores dos // |
- | /* | ||
- | ESTÁ TUDO ESCONDIDO POIS PRECISA MUDAR OS NOMES DAS VARIÁVEIS E DOS OBJETOS!!!! | ||
< | < | ||
- | res<-lm.xy$residuals | + | res.a.p<-lm.algas.peixes$residuals |
</ | </ | ||
< | < | ||
- | yest< | + | yest.a.p<-lm.algas.peixes$fitted.values |
</ | </ | ||
< | < | ||
- | plot(res~yest) | + | plot(res.a.p~yest.a.p, xlab=" |
</ | </ | ||
- | */ | ||
+ | **Como você interpreta esse gráfico? | ||
+ | Você nota algum padrão na distribuição dos erros/ | ||
- | O mesmo gráfico (resíduos | + | O mesmo gráfico (// |
- | A figura abaixo mostra vários exemplos | + | A figura abaixo mostra vários exemplos |
{{ : | {{ : | ||
Linha 180: | Linha 240: | ||
</ | </ | ||
+ | Adicionalmente, | ||
===Como saber se alguma observação está influenciando demais os parâmetros da regressão? | ===Como saber se alguma observação está influenciando demais os parâmetros da regressão? | ||
Linha 186: | Linha 246: | ||
Além de testar as premissas, também é importante fazer um diagnóstico para verificar se existem // | Além de testar as premissas, também é importante fazer um diagnóstico para verificar se existem // | ||
- | Para medir a influência de uma observação usamos uma medida denominada " | + | Para medir a influência de uma observação usamos uma medida denominada |
+ | {{ : | ||
- | Mas, devido ao tempo escasso, não vamos construir | + | <WRAP center round tip 90%> |
+ | Valores altos de Distância de Cook significam que se esse ponto for retirado das análises, | ||
+ | {{ : | ||
+ | </ | ||
- | O primeiro passo é ajustar um modelo de regressão linear aos dados obtidos. | + | |
- | /* | + | Se o valor dos // |
- | CONSERTAR NOMES DAS VARIÁVEIS E OBJETOS | + | |
+ | Devido ao tempo escasso, não vamos construir esse gráfico passo-a-passo. Vamos usar uma função mágica do R que vai mostrar 4 gráficos de diagnóstico de uma só vez e incluirá esse gráfico para que você possa analisar. | ||
+ | |||
+ | O primeiro passo é ajustar um modelo de regressão linear aos dados obtidos. | ||
+ | Para o primeiro conjunto de dados (algas_peixes.csv), | ||
< | < | ||
- | lm.xy< | + | summary (lm.algas.peixes) |
- | summary(lm.xy) | + | |
</ | </ | ||
- | */ | ||
Agora, vamos definir que sejam construídos os 4 gráficos de diagnóstico para esse modelo e que eles sejam colocados em uma mesma página: | Agora, vamos definir que sejam construídos os 4 gráficos de diagnóstico para esse modelo e que eles sejam colocados em uma mesma página: | ||
- | /* | ||
- | CONSERTAR NOMES DAS VARIÁVEIS E OBJETOS | ||
< | < | ||
par(mfrow=c(2, | par(mfrow=c(2, | ||
- | plot (lm.xy) | + | plot(lm.algas.peixes) |
par(mfrow=c(1, | par(mfrow=c(1, | ||
</ | </ | ||
- | */ | ||
- | Obs.: Note que o gráfico inferior à direita é o gráfico que mostra a distância de Cook. | + | **Obs.: Note que o gráfico inferior à direita é o gráfico que mostra a distância de Cook.** |
+ | |||
+ | **Salve essa página como.pdf e coloque o mesmo nome do arquivo de dados** | ||
+ | |||
+ | |||
+ | |||
+ | **Repita o mesmo procedimento para os outros conjuntos de dados e avalie quais premissas estão sendo atendidas ou não para cada um.** | ||
+ | < | ||
+ | ## copie uma linha por vez: | ||
+ | algas.peixes2 <- read.csv(" | ||
+ | head(algas.peixes2) | ||
+ | summary(algas.peixes2) | ||
+ | scatterplot(BIOMASSA_PEIXES_HERB2~BIOMASSA_ALGAS2, | ||
+ | lm.algas.peixes2< | ||
+ | summary (lm.algas.peixes2) | ||
+ | |||
+ | ## copie as três linhas juntas: | ||
+ | par(mfrow=c(2, | ||
+ | plot (lm.algas.peixes2) | ||
+ | par(mfrow=c(1, | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | ## copie uma linha por vez: | ||
+ | insetos.peixes <- read.csv(" | ||
+ | head(insetos.peixes) | ||
+ | summary(insetos.peixes) | ||
+ | scatterplot(BIOMASSA_PEIXES_INS~BIOMASSA_INSETOS, | ||
+ | lm.insetos.peixes< | ||
+ | summary(lm.insetos.peixes) | ||
+ | |||
+ | ## copie as três linhas juntas: | ||
+ | par(mfrow=c(2, | ||
+ | plot (lm.insetos.peixes) | ||
+ | par(mfrow=c(1, | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | ## copie uma linha por vez: | ||
+ | vol.inds <- read.csv(" | ||
+ | head(vol.inds) | ||
+ | summary(vol.inds) | ||
+ | scatterplot(INDIVIDUOS_AUSTROL~VOLUME_LAGO, | ||
+ | lm.vol.inds< | ||
+ | summary(lm.vol.inds) | ||
+ | |||
+ | ## copie as três linhas juntas: | ||
+ | par(mfrow=c(2, | ||
+ | plot (lm.vol.inds) | ||
+ | par(mfrow=c(1, | ||
+ | </ | ||
+ | |||
- | Repita o mesmo procedimento para os outros conjuntos de dados e avalie quais premissas estão sendo atendidas ou não para cada um. | ||
planeco/roteiro/07-class.1490192684.txt.gz · Última modificação em: 2024/01/09 18:38 (edição externa)