############Exercícios da Aula 8 - Regressão Múltipla################################# #1. - Galileu estava Certo? #Partindo do tutorial Ajuste de Polinômios, avalie se um polinômio de terceiro grau1) é um melhor modelo para descrever os dados do experimento de Galileu. > init.h = c(600, 700, 800, 950, 1100, 1300, 1500) > h.d = c(253, 337, 395, 451, 495, 534, 573) > > mod2 <- lm(h.d~init.h+I(init.h^2)) > > mod3 <- lm(h.d~init.h+I(init.h^2)+I(init.h^3)) > > anova(mod2,mod3) Analysis of Variance Table Model 1: h.d ~ init.h + I(init.h^2) Model 2: h.d ~ init.h + I(init.h^2) + I(init.h^3) Res.Df RSS Df Sum of Sq F Pr(>F) 1 4 744.08 2 3 48.25 1 695.82 43.26 0.00715 ** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 > > plot(h.d~init.h) > cf.m2 <- coef(mod2) > curve(cf.m2[1]+cf.m2[2]*x+cf.m2[3]*x^2, add=T, lty=2) > cf.m3 <- coef(mod3) > curve(cf.m3[1]+cf.m3[2]*x+cf.m3[3]*x^2+cf.m3[4]*x^3, add=T, lty=2) > Sim o modelo se ajusta melhor que a parábola. Contudo o resíduo explicado por essa variação é muito pequeno e perdemos mais um grau de liberdade no teste. #2. - Massa de Recém-Nascidos #Experimente todas as variáveis disponíveis no conjunto de dados Massa ao Nascer e Dados da mãe para chegar ao melhor modelo de previsão da massa de bebês ao nascer. x' #Antes de começar elimine as observações com dados faltante ,veja na descrição do arquivo. bebes = read.table("babies.txt", header=T) bebes$bwt==999 bebes$gestation==999 bebes$parity==9 bebes$height==99 bebes$smoke==9 bebes$bwt[bebes$bwt==999]=NA bebes$gestation[bebes$gestation==999]=NA bebes$height[bebes$height==99]=NA bebes$smoke[bebes$smoke==9]=NA #Avaliando todas as variaveis pairs(bebes) bebes.1 = lm(bwt~gestation, data=bebes) coef(bebes.1) summary(bebes.1) anova(bebes.1) bebes.2 = lm(bwt~gestation+height, data=bebes) coef(bebes.2) summary(bebes.2) anova(bebes.2) #Age parece não ser importante para o modelo bebes.3 = lm(bwt~gestation+height+age, data=bebes) coef(bebes.3) anova(bebes.3) summary(bebes.3) #Weight parece não ser importante para o modelo bebes.4 = lm(bwt~gestation+height+weight, data=bebes) coef(bebes.4) anova(bebes.4) summary(bebes.4) #Parity explica uma pequena parte dos residuos bebes.5 = lm(bwt~gestation+height+parity, data=bebes) coef(bebes.5) anova(bebes.5) summary(bebes.5) anova(bebes.5) #Assim como Parity, smoke explica uma pequena parte dos residuos bebes.6 = lm(bwt~gestation+height+smoke, data=bebes) coef(bebes.6) anova(bebes.6) summary(bebes.6) #Correlação final das variaveis categoricas bebes.7 = lm(bwt~gestation+height+smoke+parity, data=bebes) coef(bebes.7) anova(bebes.7) summary(bebes.7) Apesar da correlação final, ainda há uma grande variação residual não explicada pelas variáveis da regressão