Esta é uma versão antiga do documento!
Tabela de Conteúdos
<WRAP tabs>
</WRAP>
Testes Clássicos
Agora vamos checar no R com esses mesmos dados: 1) Crie um diretório (i.e. uma pasta) para você
2) Abra o R no seu computador e mude o diretório de trabalho para o diretório que você criou, usando o menu Arquivo > mudar dir….
3) Crie as variáveis x e y:
x<- c(1,2,3,4,5,6) y<- c(6,5,7,10,9,13)
4) Ajuste um modelo de regressão linear simples usando a função lm() e inspecione o resumo do modelo usando a função summary(), que fornece informações importantes sobre o modelo, incluindo os valores brutos dos erros/resíduos (residuals):
lm.xy<-lm(y~x) summary(lm.xy)
Checando as premissas
Carregue o pacote car:
library(car)
Importe o arquivo para o R e conheça os dados:
algas.peixes <- read.csv("algas_peixes.csv", sep=";") head(algas.peixes) summary(algas.peixes)
Avalie visualmente a relação entre as variáveis com o gráfico scatterplot:
scatterplot(BIOMASSA_PEIXES_HERB~BIOMASSA_ALGAS, data=algas.peixes)
Ajuste um modelo de regressão linear para as variáveis, usando a função lm():
lm.algas.peixes<-lm(BIOMASSA_PEIXES_HERB~BIOMASSA_ALGAS, data=algas.peixes) summary (lm.algas.peixes)
Use a função “names()” para saber quais são as informações que estão disponíveis sobre esse modelo:
names(lm.algas.peixes)
Se você quiser olhar detalhadamente alguma dessas informações, basta escrever o nome_do_modelo$nome_da_informação. Então, vamos olhar especificamente os erros/resíduos:
lm.algas.peixes$residuals
O mesmo pode ser feito para conhecer os valores ajustados (fitted.values), os coeficientes a e b (coef), etc.
Como saber se os erros/resíduos seguem uma distribuição normal?
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 erros/resíduos é constante?
res.a.p<-lm.algas.peixes$residuals
yest.a.p<-lm.algas.peixes$fitted.values
plot(res.a.p~yest.a.p, xlab="Y estimado", ylab="Resíduos")
summary (lm.algas.peixes)
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:
par(mfrow=c(2,2)) plot(lm.algas.peixes) par(mfrow=c(1,1))
## copie uma linha por vez: algas.peixes2 <- read.csv("algas_peixes2.csv", sep=";") head(algas.peixes2) summary(algas.peixes2) scatterplot(BIOMASSA_PEIXES_HERB2~BIOMASSA_ALGAS2, data=algas.peixes2) lm.algas.peixes2<-lm(BIOMASSA_PEIXES_HERB2~BIOMASSA_ALGAS2, data=algas.peixes2) summary (lm.algas.peixes2) ## copie as três linhas juntas: par(mfrow=c(2,2)) plot (lm.algas.peixes2) par(mfrow=c(1,1))
## copie uma linha por vez: insetos.peixes <- read.csv("insetos_peixes.csv", sep=";") head(insetos.peixes) summary(insetos.peixes) scatterplot(BIOMASSA_PEIXES_INS~BIOMASSA_INSETOS, data=insetos.peixes) lm.insetos.peixes<-lm(BIOMASSA_PEIXES_INS~BIOMASSA_INSETOS, data=insetos.peixes) summary(lm.insetos.peixes) ## copie as três linhas juntas: par(mfrow=c(2,2)) plot (lm.insetos.peixes) par(mfrow=c(1,1))
## copie uma linha por vez: vol.inds <- read.csv("vol_inds.csv", sep=";") head(vol.inds) summary(vol.inds) scatterplot(INDIVIDUOS_AUSTROL~VOLUME_LAGO, data=vol.inds) lm.vol.inds<-lm(INDIVIDUOS_AUSTROL~VOLUME_LAGO, data=vol.inds) summary(lm.vol.inds) ## copie as três linhas juntas: par(mfrow=c(2,2)) plot (lm.vol.inds) par(mfrow=c(1,1))