# Sofia Marques Silva ## Exercícios de Regressão Múltipla ### Galileu estava certo? # y = a + b x + c x^2 + d x^3 init.h = c(600, 700, 800, 950, 1100, 1300, 1500) h.d = c(253, 337, 395, 451, 495, 534, 573) modelo1 <- lm(h.d~init.h) modelo2 <- update(modelo1,.~.+I(init.h^2)) modelo3 <- update(modelo2,.~.+I(init.h^3)) modelo4 <- update(modelo3,.~.+I(init.h^4)) anova(modelo1,modelo2,modelo3,modelo4) # O modelo 4 diminui o numero de resíduos mas nao significativamente em relação ao modelo 3. ### Massa de recém-nascidos rnasc<-read.table("babies.txt",header=TRUE,na.strings=999) head(rnasc) str(rnasc) # Verificando. NAs presentes. rnasc1<-rnasc[apply(is.na(rnasc),1,sum)==0,] head(rnasc1) str(rnasc1) # Verificando. "Integers" que são "Factors" rnasc1$parity<-as.factor(rnasc1$parity) rnasc1$smoke<-as.factor(rnasc1$smoke) str(rnasc1) # Verificando. Há um 9 que não sabemos se significa fumadora ou nao fumadora (1 ou 0) rnasc1<-rnasc1[rnasc1$smoke!=9,] table(rnasc1$smoke) #sem esse dado mas ainda com 3 níveis rnasc1$smoke<-factor(rnasc1$smoke, levels=c("0","1")) table(rnasc1$smoke) # agora está ok table(rnasc1$parity) # verificando que este factor está ok # para continuar a exploração dos dados: pairs(rnasc1[,c("bwt","gestation","parity","age","height","weight","smoke")],pch=17) # detecta-se que um ponto na idade correspondente a mais de 90 anos e a uma altura maior que 90 tb. # vou considerar como erros. rnasc1<-rnasc1[rnasc1$age<90,] rnasc1<-rnasc1[rnasc1$height<90,] # verificando de novo: pairs(rnasc1[,c("bwt","gestation","parity","age","height","weight","smoke")],pch=17) # as variáveis "height" e "weight" parecem estar co-relacionadas, tal como é de esperar. # vou mantê-las sempre interagindo. A variável que parece estar mais relacionada # com o peso à nascença é "gestation". Então irei começar por testar um modelo # com essa variável. rnasc.m1<-lm(bwt~gestation, data=rnasc1) anova(rnasc.m1) # Apenas 16% dos dados ficam explicados por esta vari+avel. # Mas como mencionado antes, esta é a variável "mais promissora". rnasc.m2<-lm(bwt~gestation+height:weight, data=rnasc1) anova(rnasc.m1,rnasc.m2) #não melhora consideravelmente o modelo rnasc.m3<-lm(bwt~gestation+age, data=rnasc1) anova(rnasc.m3) # a idade ainda menos contribui rnasc.m4<-lm(bwt~gestation+parity, data=rnasc1) anova(rnasc.m4) rnasc.m4<-lm(bwt~gestation+smoke, data=rnasc1) anova(rnasc.m4) summary(rnasc.m4) # este factor parece estar relacionado negativamente com o peso # assim o modelo que melhor explica os dados deve considerar um efeito positivo # do tempo de gestação e um efeito negativo do consumo de tabaco. Conhecendo melhor os dados # poder-se-iam tentar outros modelos. #### FIM ####