set.seed(123) dados <- data.frame(Sexo = rep(0:1, each=10), Idade = runif(20, 10, 15)) dados <- transform(dados, Altura = 120 + Idade*2 + 5*Sexo + rnorm(20, 0, 2)) aj <- lm(Altura ~ Sexo + Idade, dados) coef(summary(aj)) summary(aj) par(mar=c(4,4.2,1,.1), mgp=c(2.7,.7,0)) with(subset(dados, Sexo==1), plot(Idade, Altura, pch=19, ylim=c(135,160), axes=F, xlab="Idade (anos)", ylab="Altura (cm)")) box() axis(1, 10:15) axis(2, c(135,140,145,150,155,160), las=1) with(subset(dados, Sexo==0), points(Idade, Altura, pch=19, col=2)) idad.seq <- seq(min(dados$Idade), max(dados$Idade), len=101) lines(idad.seq, coef(aj)[1] + coef(aj)[2] + coef(aj)[3]*idad.seq) lines(idad.seq, coef(aj)[1] + coef(aj)[3]*idad.seq, col=2) text(12, 157, expression(hat(Y) == 127.74 + 3.58 (Sexo) + 1.43 (Idade))) text(11, 156, expression(R^2 == 0.69)) ########################### newdat <- data.frame(Sexo=rep(0:1, each=length(idad.seq)), Idade=rep(idad.seq, 2)) pred <- predict(aj, newdata=newdat, interval="pred") conf <- predict(aj, newdata=newdat, interval="conf") lines(idad.seq, pred[newdat$Sexo==1,2], lty=2) lines(idad.seq, pred[newdat$Sexo==1,3], lty=2) lines(idad.seq, pred[newdat$Sexo==0,2], lty=2, col=2) lines(idad.seq, pred[newdat$Sexo==0,3], lty=2, col=2) lines(idad.seq, conf[newdat$Sexo==1,2], lty=3) lines(idad.seq, conf[newdat$Sexo==1,3], lty=3) lines(idad.seq, conf[newdat$Sexo==0,2], lty=3, col=2) lines(idad.seq, conf[newdat$Sexo==0,3], lty=3, col=2) legend(14-.5, 140, c("Esperado", "IC Predicao", "IC Confianca"), lty=1:3, bty="n") legend(14-.5, 137, c("Masculino", "Feminino"), lty=1, col=1:2, bty="n")