* [[cursos:planeco:roteiro:07-classrcmdr|{{:planeco:logorcmdr01.png?20|}}]] * [[cursos:planeco:roteiro:07-classr|{{:planeco:rlogo.png?20|}}]] ====== Testes Clássicos ====== {{section>cursos:planeco:roteiro:07-class_base#testes_classicos}} ===== Regressão Linear Simples ===== {{section>cursos:planeco:roteiro:07-class_base#regressao_linear_simples}} 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 ==== {{section>cursos:planeco:roteiro:07-class_base#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?==== {{section>cursos:planeco:roteiro:07-class_base#como_saber_se_os_erros_residuos_seguem_uma_distribuicao_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?==== {{section>cursos:planeco:roteiro:07-class_base#como_saber_se_a_variância dos erros_residuos_e_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") {{section>cursos:planeco:roteiro:07-class_base#residuo2}} 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)) {{section>cursos:planeco:roteiro:07-class_base#final}} ## 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))